public void Insert(NewDiscussionViewModel model) { var mapper = new MapperConfiguration(c => { c.CreateMap <NewDiscussionViewModel, Discussion>(); c.IgnoreUnmapped(); c.CreateMap <UserViewModel, User>(); c.IgnoreUnmapped(); c.CreateMap <CategoryViewModel, Category>(); c.IgnoreUnmapped(); }).CreateMapper(); var discussion = mapper.Map <NewDiscussionViewModel, Discussion>(model); _discussionsRepository.Insert(discussion); }
public ActionResult Create(NewDiscussionViewModel viewModel) { try { DateTime Start = new DateTime ( viewModel.Date.Year, viewModel.Date.Month, viewModel.Date.Day, viewModel.StartTime.Hour, viewModel.StartTime.Minute, 0 ); if ((Start - DateTime.Now).Ticks < 0) { return(View(viewModel)); } Book book = db.Books.Find(viewModel.Book.Id); Discussion discussion = new Discussion { Id = Guid.NewGuid(), ClubId = viewModel.ClubId, Name = viewModel.Name, StartTime = Start, Date = Start.Date }; BookDiscussions bookDiscussions = new BookDiscussions { Id = Guid.NewGuid(), Book = book, Discussion = discussion }; db.Discussions.Add(discussion); db.BookDiscussions.Add(bookDiscussions); BookClub club = db.BookClubs.Find(viewModel.ClubId); club.NextBook = book; db.SaveChanges(); return(RedirectToAction("Index", "Club", new { id = viewModel.ClubId })); } catch { return(View(viewModel)); } }