public void Add(string name, long[] permissionIds) { using (MyDbContext dbContext = new MyDbContext()) { BaseService <RoleEntity> baseService = new BaseService <RoleEntity>(dbContext); RoleEntity roleEntity = new RoleEntity() { Name = name }; baseService.Add(roleEntity); BaseService <PermissionEntity> permissionService = new BaseService <PermissionEntity>(dbContext); /* * 连接数据库的操作太多 不建议这样使用 * var plist = permissionService.GetAll(); * foreach (var pid in permissionIds) * { * var permissionObj = plist.SingleOrDefault(x => x.Id == pid); * item.PermissionEntities.Add(permissionObj); * * }*/ var permissionList = permissionService.GetAll().Where(x => permissionIds.Contains(x.Id)).ToArray(); foreach (var permissionObj in permissionList) { roleEntity.PermissionEntities.Add(permissionObj); } dbContext.SaveChanges(); } }
public int AddPermission(PermissionDTO permissionDTO) { using (MyDbContext myDbContext = new MyDbContext()) { BaseService <PermissionEntity> baseService = new BaseService <PermissionEntity>(myDbContext); PermissionEntity permission = new PermissionEntity(); permission.Name = permissionDTO.Name; permission.Description = permissionDTO.Description; return(baseService.Add(permission)); } }