bftarane
جمعه 24 آذر 1391, 16:47 عصر
سلام.
من يه فيلد در جدول کاربران دارم که به شکل زير نقشها رو نگه مي داره مثلاً Admin,Manager,User
همونطور که در شکل مي بينيد من يه چک باکس ليست دارم که تمام نقشهاي موجود در اون نمايش داده ميشه
96662
و يه ليست باکس هم دارم که نقشهاي يک کاربر خاص در اون نمايش داده ميشه
حالا سعي دارم کاري کنم کاربر هر کدوم از چک باکس ها رو که کليک کرد نقش جديد به نقشهاي قبلي اضافه بشه
و کدهاي زير رو نوشتم
protected void chkl_roles_SelectedIndexChanged(object sender, EventArgs e)
{
string mystring = GetRolesByUsername(ViewState["Id"].ToString());
List<string> rolesList = new List<string>();
rolesList.Add(mystring);
string SelectedRole = chkl_roles.SelectedItem.Text;
rolesList.Add(SelectedRole);
if (mystring !="")
{
string Roles = string.Join(",", rolesList);
UpdateRoles(Roles, ViewState["Id"].ToString());
}
else
{
MyDALBase.ExecuteNoneQuery(System.Data.CommandType .StoredProcedure, "InsertRole", new SqlParameter[]{
new SqlParameter("@Role",SelectedRole)
});
}
1- حالا مسئله اينجاست که وقتي يه نقش اضافه ميشه و مي خوام حالا دوباره يه نقش ديگه اضافه کنم همون نقش قبلي اضافه ميشه
يعني من چک مثلاً Manager رو مي زنم ولي نقش Admin (همون نقشي که يه خورده پيش اضافه شده بود)
دوباره اضافه ميشه
خودم فکر مي کنم بايد چک نقش قبلي رو يه طوري بردارم بدون اينکه پست بک اتفاق بيفته
ولي نمي دونم چطور بايد اين کار رو بکنم
2- سوال بعدي اينه که چطوردر نقشهاي قبلي بگردم تا نقش تکراري اضافه نشه؟
اگه راه بهتري هم سراغ داريد براي افزودن نقش در ميون بزارين لطفاً.
من يه فيلد در جدول کاربران دارم که به شکل زير نقشها رو نگه مي داره مثلاً Admin,Manager,User
همونطور که در شکل مي بينيد من يه چک باکس ليست دارم که تمام نقشهاي موجود در اون نمايش داده ميشه
96662
و يه ليست باکس هم دارم که نقشهاي يک کاربر خاص در اون نمايش داده ميشه
حالا سعي دارم کاري کنم کاربر هر کدوم از چک باکس ها رو که کليک کرد نقش جديد به نقشهاي قبلي اضافه بشه
و کدهاي زير رو نوشتم
protected void chkl_roles_SelectedIndexChanged(object sender, EventArgs e)
{
string mystring = GetRolesByUsername(ViewState["Id"].ToString());
List<string> rolesList = new List<string>();
rolesList.Add(mystring);
string SelectedRole = chkl_roles.SelectedItem.Text;
rolesList.Add(SelectedRole);
if (mystring !="")
{
string Roles = string.Join(",", rolesList);
UpdateRoles(Roles, ViewState["Id"].ToString());
}
else
{
MyDALBase.ExecuteNoneQuery(System.Data.CommandType .StoredProcedure, "InsertRole", new SqlParameter[]{
new SqlParameter("@Role",SelectedRole)
});
}
1- حالا مسئله اينجاست که وقتي يه نقش اضافه ميشه و مي خوام حالا دوباره يه نقش ديگه اضافه کنم همون نقش قبلي اضافه ميشه
يعني من چک مثلاً Manager رو مي زنم ولي نقش Admin (همون نقشي که يه خورده پيش اضافه شده بود)
دوباره اضافه ميشه
خودم فکر مي کنم بايد چک نقش قبلي رو يه طوري بردارم بدون اينکه پست بک اتفاق بيفته
ولي نمي دونم چطور بايد اين کار رو بکنم
2- سوال بعدي اينه که چطوردر نقشهاي قبلي بگردم تا نقش تکراري اضافه نشه؟
اگه راه بهتري هم سراغ داريد براي افزودن نقش در ميون بزارين لطفاً.