EF批量新增删除
將逗號(hào)分割的內(nèi)容轉(zhuǎn)換為list;
舉例:a="1,2,4,45" 分割為1,2,4,45
List<string> list = new List<string>(roleDate.menuid.Split(','));批量新增
//將角色與菜單綁定for (var i = 0; i < list.Count(); i++) {var systemroleclaimsItem = new systemroleclaims(){roleid = id,menuid = list[i]};_context.systemroleclaims.Add(systemroleclaimsItem);}await _context.SaveChangesAsync();批量刪除
List<systemroleclaims> oldMenu = _context.systemroleclaims.Where(n=>n.roleid == roleDate.Roleid).ToList();foreach (var item in oldMenu){_context.systemroleclaims.Remove(item);}_context.SaveChanges();list轉(zhuǎn)數(shù)組
var roles = _context.systemuserroles.Where(P => P.userid == LoginUser.Id).ToList(); //查詢出登陸用戶下的角色idList<System.Int32> listS = new List<System.Int32>();for (var i =0;i<roles.Count();i++) {listS.Add(int.Parse(roles[i].roleid));}int[] str = listS.ToArray(); //list轉(zhuǎn)數(shù)組Linq中實(shí)現(xiàn)select * from A where id in(1,2,3,4);重點(diǎn)str.Contains(P.roleid)
int[] str = listS.ToArray(); //list轉(zhuǎn)數(shù)組var menus = _context.systemroleclaims.Where(P=>str.Contains(P.roleid)).ToList(); //查詢出角色對(duì)應(yīng)的菜單權(quán)限拼接以逗號(hào)分割的字符串,并移除最后一個(gè)逗號(hào)
string UseridList = "";for (int i = 0; i < datas.Count(); i++){string userid = datas[i]["mainTable"]["xm"].ToString(); //獲取學(xué)員id// string phone = datas[i]["mainTable"]["sjhm"].ToString(); //獲取學(xué)員idgetUserInfor(userid, roomid, deviceIndexCode); //根據(jù)學(xué)員id獲取學(xué)員信息UseridList += datas[i]["mainTable"]["xm"].ToString() + ','; //拼接學(xué)員id}UseridList = UseridList.Substring(0, UseridList.Length - 1); //去除字符串的最后一個(gè)","總結(jié)
- 上一篇: MeshBaker优化原理
- 下一篇: 使用 rr 进行debug