// For Search Result Window // GET: /Directors/DetailsView/5 public ActionResult DetailsView(int? id) { if (id == null) { return new HttpStatusCodeResult(HttpStatusCode.BadRequest); } Actor actor = db.Actors.All().Include(d => d.Movies).FirstOrDefault(d => d.Id == id); if (actor == null) { return HttpNotFound(); } var model = new ActorDetails() { FullName = actor.FirstName + " " + actor.LastName, Id = actor.Id, Age = actor.Age, Picture = actor.Picture, Movies = actor.Movies.Select(m => new MovieDetails() { Title = m.Title, CategoryName = m.Category.Name, DetailsUrl = "/Movies/Details/" + m.Id, }) }; return PartialView("_ActorDetails", model); }
public void DetailsViewShouldReturnCorrectActor() { var list = new List<Actor>(); for (int i = 0; i < 10; i++) { list.Add(new Actor() { Id = i, FirstName = "Pesho", LastName = "Peshev" }); } var expected = new ActorDetails() { FullName = "Pesho Peshev" }; var movieRepoMock = new Mock<IRepository<Actor>>(); movieRepoMock.Setup(x => x.All()).Returns(list.AsQueryable()); var uowMock = new Mock<IUowData>(); uowMock.Setup(x => x.Actors).Returns(movieRepoMock.Object); var controller = new ActorsController(uowMock.Object); var viewresult = controller.DetailsView(1) as PartialViewResult; Assert.IsNotNull(viewresult, "ViewResult is Null"); var resModel = viewresult.Model; var model = viewresult.Model as ActorDetails; Assert.IsNotNull(model, "The model is Null"); Assert.AreEqual(expected.FullName, model.FullName); }
protected void btngridviewadd_Click(object sender, EventArgs e) { DataClasses1DataContext dataContext = new DataClasses1DataContext(); try { ActorDetails actor = new ActorDetails(); var actors = (from d in dataContext.Actors where d.Name.ToUpper().Trim() == txtActorName.Text.ToUpper().Trim() select d); if (actors.Any()) { actor.ActorId = actors.First().ActorId; actor.ActorName = actors.First().Name; actor.DOB = actors.First().DOB; actor.BIO = actors.First().Bio; actor.Sex = actors.First().Sex; } if (ViewState["actorDetails"] != null) { List <ActorDetails> list2 = ViewState["actorDetails"] as List <ActorDetails>; //If actor already added to this movie so for the next time user can't select same actor/actress foreach (var item in list2) { if (item.ActorId == actor.ActorId) { throw new Exception("Actor or Actress already added"); } } } if (ViewState["actorDetails"] != null) { list = (List <ActorDetails>)ViewState["actorDetails"]; } list.Add(actor); ViewState["actorDetails"] = list; grActorList.DataSource = list; grActorList.DataBind(); txtActorName.Text = ""; } catch (Exception eX) { lblMsg.Text = eX.Message; lblMsg.ForeColor = System.Drawing.Color.Red; } }