示例#1
0
        public void AssignFuncToUser(string userId, string funcCode, AccessLevel level)
        {
            var dbEntity = dataContext.P_User2Functions.Where(o => o.UserId == userId && o.FuncCode == funcCode).SingleOrDefault();

            if (dbEntity == null)
            {
                dbEntity          = new P_User2Function();
                dbEntity.UserId   = userId;
                dbEntity.FuncCode = funcCode;
                dataContext.P_User2Functions.Add(dbEntity);
            }

            dbEntity.AccessLevel = (int)level;
            dataContext.SaveChanges();
        }
示例#2
0
        public void AssignWholeFuncsToUser(string userId, List <FuncAssignation> funcCodes)
        {
            var query = from o in dataContext.P_User2Functions
                        where o.UserId == userId
                        select o;

            dataContext.P_User2Functions.RemoveRange(query);
            dataContext.SaveChanges();
            foreach (var funcCodeObj in funcCodes)
            {
                var dbEntity = new P_User2Function();
                dbEntity.UserId   = userId;
                dbEntity.FuncCode = funcCodeObj.FuncCode;
                if (funcCodeObj.AccessLevel != null)
                {
                    dbEntity.AccessLevel = (int)funcCodeObj.AccessLevel.Value;
                }
                dataContext.P_User2Functions.Add(dbEntity);
            }

            dataContext.SaveChanges();
        }