public MessageResultDto AddGroup(string name) { Group group = null; var result = new MessageResultDto(); using (ISession session = _sessionFactory.OpenSession()) using (ITransaction transaction = session.BeginTransaction()) { IRepository<Group> groupRepository = new Repository<Group>(session); var existingGroup = groupRepository.FindOne(new Tuple<Expression<Func<Group, object>>, string>(x => x.Name, name)); if (null == existingGroup) { group = new Group { Name = name }; groupRepository.Add(group); transaction.Commit(); result.SuccessMessage("Group added successfully", group.Id); } else { result.ErrorMessage("Group with same name already exisits"); } } return result; }
public NhibernateDatabaseContext() { SessionFactory = CreateSessionFactory(); using (ISession session = SessionFactory.OpenSession()) using (var transaction = session.BeginTransaction()) { var groupRepository = new Repository<Group>(session); var group = groupRepository.FindOne(x => x.Name == _groupName); if (group == null) { group = new Group { Name = _groupName, IsSysAccount = true, }; var user = new User { FirstName = "System", LastName = "Administrator", Username = "******", Nickname = "SuperAdmin", Password = "******", Group = group, }; groupRepository.Add(group); (new Repository<User>(session)).Add(user); transaction.Commit(); } } }
public User() { Group = new Group(); Accounts = new List<Account>(); }