public Aimp(string login, string password) { Context = AimpContextResolve.Context; var userId = Context.Users .All() .Where(x => x.Login == login && x.Password == password) .Select(x => x.Id) .FirstOrDefault(); if (userId > 0) { var rightIds = Context.UserRights .All() .Where(x => x.UserId == userId) .Select(x => x.RightId) .ToList(); User = new SystemUser() { Id = userId, RightIds = rightIds }; } else { throw new AuthorizationException("Введён неверный логин или пароль"); } }
public static void AddOrUpdate(IAimpContext context, IEntity entity, IUserFile newFile, IUserFile dbOldFile) { if (newFile != null) { if (entity.Id == 0) { if (newFile != null) { context.UserFiles.AddOrUpdate(newFile); context.SaveChanges(); } } else { if (newFile == null && dbOldFile?.Id != null) { context.UserFiles.Delete(dbOldFile.Id); } else { if (newFile != null) { newFile.Id = dbOldFile?.Id ?? 0; context.UserFiles.AddOrUpdate(newFile); context.SaveChanges(); } } } } else { if (dbOldFile?.Id != null) { context.UserFiles.Delete(dbOldFile.Id); } } }