public async Task <ActionResult <DeskViewModel> > PostDesk([FromBody] PostDeskDTO dto) { var user = await _context.Users.FindAsync(dto.UserId); if (user == null) { return(NotFound()); } var desk = _context.Desks.Add(new Desk { Title = dto.Title, Description = dto.Description }).Entity; _context.UserHasDesks.Add(new UserHasDesk { Desk = desk, User = user }); await _context.SaveChangesAsync(); var userView = new UserViewModel { Id = user.Id, Email = user.Email, Login = user.Login }; var deskView = new DeskViewModel { Title = desk.Title, Description = desk.Description, Users = new HashSet <UserViewModel> { userView } }; return(CreatedAtAction(nameof(GetDesk), new { id = desk.Id }, deskView)); }
public async Task <ActionResult <DeskViewModel> > GetDesk(int id) { var desk = await _context.Desks.FindAsync(id); if (desk == null) { return(NotFound()); } var users = await _context.UserHasDesks .Include(o => o.User) .Where(o => desk.Id == o.IdDesk) .Select(o => new UserViewModel { Id = o.User.Id, Email = o.User.Email, Login = o.User.Login }) .ToListAsync(); var view = new DeskViewModel { Id = desk.Id, Title = desk.Title, Description = desk.Description, Users = users }; return(view); }
public DeskviewPage() { InitializeComponent(); BindingContext = new DeskViewModel(this, Name); }