public async System.Threading.Tasks.Task <DataTable> SaveBoRolesAsync(string roleId, string userName, List <BoRoleLine> boRoleLines, FAISEntities db) { foreach (var line in boRoleLines) { var boRole = new BO_ROLE() { ROLE_ID = line.ROLE_ID, CAN_READ = line.CAN_READ, CAN_WRITE = line.CAN_WRITE, STATUS = "ACTIVE", }; if (line.OBJECT_TYPE == "BO") { boRole.META_BO_ID = line.META_BO_ID; } else { boRole.PAGE_ID = line.META_BO_ID; } if (line.lineStatus == "new") { boRole.CREATED_BY = userName; boRole.CREATED_DATE = DateTime.Now; boRole.ROLE_ID = roleId; db.Entry(boRole).State = System.Data.Entity.EntityState.Added; } else { boRole = await db.BO_ROLE.FindAsync(line.BO_ROLE_ID); boRole.CAN_READ = line.CAN_READ; boRole.CAN_WRITE = line.CAN_WRITE; boRole.UPDATED_BY = userName; boRole.UPDATED_DATE = DateTime.Now; db.Entry(boRole).State = System.Data.Entity.EntityState.Modified; } } await db.SaveChangesAsync(); return(GetBoRoles(roleId)); }