public ActionResult NewEntry(ModelWrapper m) { if (m.NewContestEntryBindingModel.ImageInputFile == null || m.NewContestEntryBindingModel.ImageInputFile.ContentLength < 1) { return View("Error"); } string[] formats = { ".jpg", ".png", ".gif", ".jpeg" }; if (!formats.Any(f => m.NewContestEntryBindingModel.ImageInputFile.FileName .EndsWith(f, StringComparison.OrdinalIgnoreCase))) { return Content("File is in different format!"); } var userId = User.Identity.GetUserId(); var imgUrl = UploadFile(m.NewContestEntryBindingModel); var entry = new ContestEntry { Title = m.NewContestEntryBindingModel.Title, ContestId = m.NewContestEntryBindingModel.ContestId, PhotoUrl = imgUrl.Result, AuthorId = userId, Upploaded = DateTime.Now }; this.Data.ContestEntries.Add(entry); this.Data.SaveChanges(); return RedirectToAction("Details","Contest",new {id = entry.ContestId}); }
public ActionResult Details(int? page, int id) { this.ViewBag.Contest = id; this.ViewBag.Page = page; var contest = this.Data.Contests.All() .Where(c => c.Id == id) .ProjectTo<ContestDetailsViewModel>().FirstOrDefault(); var entries = this.Data.ContestEntries.All() .Where(ce => ce.ContestId == id) .Where(ce => ce.State == ContestEntryState.Acceppted) .OrderByDescending(e => e.Upploaded) .ProjectTo<ContestEntryShortViewModel>() .ToPagedList(page ?? GlobalConstants.DefaultStartPage, GlobalConstants.DefaultPageSizeCe); ; var winners = this.Data.ContestEntries.All() .Where(ce => ce.ContestId == id) .Where(ce => ce.State == ContestEntryState.Acceppted) .Where(ce => ce.IsWinner == true) .OrderByDescending(e => e.Upploaded) .ProjectTo<ContestEntryShortViewModel>() .ToPagedList(page ?? GlobalConstants.DefaultStartPage, GlobalConstants.DefaultPageSizeCe); ; var result = new ModelWrapper() { ContestDetailsViewModel = contest, ContestEntryShortViewModel = entries, ContestWinners = winners }; return this.View("Details", result); }
public void ShouldBeAbleToChangeCreateWrapperFunction() { var wrapper1 = new ModelWrapper(new Model { Name = "One" }); var wrapper2 = new ModelWrapper(new Model { Name = "Two" }); var collectionA = new ObservableCollection<Model>(); var wrapper = new ObservableCollectionWrapper<Model, ModelWrapper>(collectionA, item => wrapper1); collectionA.Add(wrapper1.Source); wrapper.Contains(wrapper1).ShouldBe(true); // --- wrapper.CreateWrapper = item => wrapper2; collectionA.Add(wrapper2.Source); wrapper.Contains(wrapper2).ShouldBe(true); }
public void StartLoan([FromBody] ModelWrapper wrapper) { new LoanElasticServerDAO().StartLoan(wrapper.Item, wrapper.Person, wrapper.Date); }