2012-02-13 15 views
1

こんにちは...私はマスターページを持っている......どのように特定のユーザーのためのメニューを非表示にするには? thierログインタイプに基づいて、特定のユーザーのために特定のメニューを非表示にするには、どのように

1)I have four Main users 
2)Each user is redirected his own page on login. 

何私がしたいことは、私はすべてのユーザーのためのいくつかのメニューを非表示にしたいです

1)if Manager logins only his required menu should be shown to him,this menu shouldn't be avaliable to other users 

thierログインタイプに基づいて、私のログインコードは、この

  protected void btnLogin_Click(object sender, EventArgs e) 
    { 
     //Response.Redirect("~//Administration/DashBoard.aspx"); 
     SqlConnection con = new SqlConnection("Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=DebitCareBankApp;Data Source=SSDEV7-HP\\SQLEXPRESS"); 
     string cmdStr = "select LoginType from Login where UserName='" + TxtUserName.Text + "' AND Password = '" + TxtPassword.Text + "'"; 
     SqlCommand cmd = new SqlCommand(cmdStr, con); 
     con.Open(); 
     Object TypeUser = cmd.ExecuteScalar(); 
     con.Close(); 
     //int switchcase = int.Parse(TypeUser); 
     if (TypeUser != null) 
     { 
      LblError.Visible = false; 
      LblError.Text = ""; 
      if (TypeUser.ToString() == "Manager") 
      { 

       Response.Redirect("~//Administration/Manager/WorkManagement.aspx"); 
      } 
      else if (TypeUser.ToString() == "HR") 
      { 
          Response.Redirect("~//Administration/Hr/CalculateAndGeneratePayslips.aspx"); 
      } 
      else if (TypeUser.ToString() == "Employee") 
      { 
       Response.Redirect("~//Administration/CallingAgent/TodaysWork.aspx"); 
      } 
     } 
     else 
     { 
      LblError.Visible = true; 
      LblError.Text = "Invalid Credentials Entered, Try again"; 
     } 
    } 
+0

メニューの作成方法は?それを行うにはUserControlを使用していますか?または、手動でメニューを作成する各ページで? –

答えて

0

ように書きに私は過去に、この目的のためにデータベーステーブルを使用していました。私はメニューとロールをデータベースに保存し、ログに記録されたユーザーに基づいて質問し、メニューを作成しました。

一般的には機能しますが、メニューを作成する方法を教えてもらえれば、私の答えを詳しく説明できます。コメントとして追加してください。

よろしくお願いいたします。

+0

私のデータベースには私はメニュー項目はありません。メニュー項目はありません。私はメニューコントロールにIDを割り当てます – SoftwareNerd

+0

メニューメニューとロールメニューテーブルに1対多の関係がある場合は、メニューテーブルを使用して、ユーザに基づいてメニューを生成する。 – AnarchistGeek

+0

と私はあなたのロールテーブルにもそれらのパスを格納することをお勧めします。 〜/管理/マネージャ/ WorkManagement.aspxのようなリダイレクトリンクやリダイレクトなどの役割テーブルに別の列を追加すると、コードがより洗練されたものになります – AnarchistGeek

関連する問題