Beispiel #1
0
        private static Group createGroup(Database.POCO.Group entity)
        {
            var group = new Group(entity, new User(entity.Admin));

            group.Users = entity.Users.Select(u => new User(u)).ToList();
            return(group);
        }
Beispiel #2
0
 public Group(Database.POCO.Group groupEntity, User admin)
 {
     this.Id    = groupEntity.GroupId;
     this.Name  = groupEntity.Name;
     this.Admin = admin;
     this.Users = new List <User>();
 }
Beispiel #3
0
        public async Task <Group> AddAsync(Group group)
        {
            var groupEntity = new Database.POCO.Group()
            {
                Name  = group.Name,
                Admin = context.Users.First(u => u.Email.Equals(group.Admin.Email)),
                Users = findMembers(group).ToList()
            };

            var added = context.Groups.Add(groupEntity).Entity;
            await context.SaveChangesAsync();

            return(createGroup(added));
        }
Beispiel #4
0
        public static Group CreateGroup(WebmailContext context, string name, Database.POCO.User admin,
                                        List <Database.POCO.User> members = null)
        {
            var group = new Database.POCO.Group()
            {
                Name  = name,
                Admin = admin,
                Users = members ?? new List <Database.POCO.User>()
            };

            context.Groups.Add(group);
            context.SaveChanges();
            return(CreateGroup(group));
        }