/// <summary> /// 批量操作请求的处理函数 /// </summary> /// <returns></returns> protected virtual IActionResult BatchAction() { // 防跨站攻击 this.RequireAjaxRequest(); var actionName = Request.Get <string>("action"); var action = BatchActions.GetOrDefault(actionName); if (action == null) { // 找不到对应的操作 throw new NotFoundException(string.Format(new T("Action {0} not exist"), actionName)); } // 检查权限 var privilegeManager = Application.Ioc.Resolve <PrivilegeManager>(); privilegeManager.Check(RequiredUserType, action.Item2); return(action.Item1()); }
public string GetConfigObjectSerialized(IUrlHelper url) { var columns = GetColumnsOrdered(); return(JsonConvert.SerializeObject(new { columns = columns.Select(tc => tc.GetDataTablesObject(ServerSide)), rowGroup = BuildRowGroupObject(columns), ajax = new { url = TableItemsApiUrl }, hasStaticIndexColumn = HasTableIndexColumn, skipDefaultModalEventHandlers = SkipDefaultModalEventHandlers, enableColumnSearch = EnableColumnSearch, checkboxSelection = CheckboxSelection, batchActions = BatchActions?.Select(ba => ba.GetConfigObject(url)), tableActions = TableActions, serverSide = ServerSide, searchDelay = ServerSideSearchDelay, iDisplayLength = DefaultDisplayLength })); }