62,046
社区成员
发帖
与我相关
我的任务
分享
<asp:Repeater ID="repeate_Menu" runat="server" onitemdatabound="repeate_Menu_ItemDataBound">
<ItemTemplate>
<div class="RoleByMenu">
<asp:HiddenField ID="hidden_MenuID" runat="server" Value='<%#Eval("ID") %>' />
<asp:HiddenField ID="hidden_ModuleID" runat="server" Value='<%#Eval("ModuleID") %>' />
<div style="width:100px;float:left">
<asp:CheckBox ID="cb_MenuID" runat="server" Text='<%#Eval("MenuName") %>' />
</div>
<div style="width:auto;float:left">
<asp:Repeater ID="repeater_Action" runat="server" onitemdatabound="repeater_Action_ItemDataBound">
<ItemTemplate>
<div style="width:auto;float:left;margin-right:10px;font-weight:normal">
<asp:HiddenField ID="hidden_ActionCode" runat="server" Value='<%#Eval("ActionCode") %>' />
<asp:HiddenField ID="hidden_ActionID" runat="server" Value='<%#Eval("ID") %>' />
<asp:HiddenField ID="hidden_AdminUrl" runat="server" Value='<%#Eval("AdminUrl") %>' />
<asp:CheckBox ID="cb_Action" runat="server" Text='<%#Eval("ActionName") %>' /></div>
</ItemTemplate>
</asp:Repeater>
</div>
</div>
</ItemTemplate>
</asp:Repeater>
private void SaveOrUpdateUserAction(int intUserID)
{
try
{
foreach (RepeaterItem item in repeate_Menu.Items)
{
if (item.ItemType == ListItemType.AlternatingItem || item.ItemType == ListItemType.Item)
{
int menuID = int.Parse(((HiddenField)item.FindControl("hidden_MenuID")).Value);
//string menuCode = ((HiddenField)item.FindControl("hidden_MenuCode")).Value;
//第一层Repeater:菜单
CheckBox cb_MenuID = (CheckBox)item.FindControl("cb_MenuID");
M_UsersAction model = new M_UsersAction();
model.UserID = intUserID;
model.MenuID = menuID;
model.IsValid = cb_MenuID.Checked;
//Response.Write(string.Format("UserID:{0} MenuID:{1} MenuCode:{2} IsValid:{3}<br>", intUserID, menuID.ToString(), menuCode, IsValid.ToString()));
BLLFactory.GetUserActionBLL().SaveOrUpdate(model);
//第二层Repeater:动作
Repeater repeater_Action = (Repeater)item.FindControl("repeater_Action");
foreach (RepeaterItem itemByAction in repeater_Action.Items)
{
if (itemByAction.ItemType == ListItemType.AlternatingItem || itemByAction.ItemType == ListItemType.Item)
{
CheckBox cb_Action = (CheckBox)itemByAction.FindControl("cb_Action");
HiddenField hidden_ActionCode = (HiddenField)itemByAction.FindControl("hidden_ActionCode");
HiddenField hidden_ActionID = (HiddenField)itemByAction.FindControl("hidden_ActionID");
HiddenField hidden_AdminUrl = (HiddenField)itemByAction.FindControl("hidden_AdminUrl");
M_UsersAction modelByUser = new M_UsersAction();
modelByUser.ActionCode = hidden_ActionCode.Value;
modelByUser.ActionID = int.Parse(hidden_ActionID.Value);
modelByUser.AdminUrl = hidden_AdminUrl.Value;
modelByUser.IsValid = cb_Action.Checked;
modelByUser.MenuID = menuID;
modelByUser.UserID = intUserID;
BLLFactory.GetUserActionBLL().SaveOrUpdate(modelByUser);
}
}
}
}
}
catch (SqlException ex)
{
System.Log.LogHelper.WriteError(ex.Message, ex);
}
}