public ActionResult NewPieceArtist(int PieceId) { Piece Piece = db.Pieces.Single(p => p.Piece_Id == PieceId); ViewBag.PieceId = PieceId; ViewBag.PieceArtist_PieceArtistTypeId = new SelectList( db.PieceArtistTypes .OrderBy(r => r.PieceArtistType_Id), "PieceArtistType_Id", "PieceArtistType_Name"); ViewBag.PieceArtist_ArtistId = new SelectList(db.Artists .OrderBy(a => a.Artist_LastName).ThenBy(a => a.Artist_FirstName), "Artist_Id", "Artist_LastName"); PieceArtist PieceArtist = new PieceArtist(); PieceArtist.PieceArtist_PieceId = PieceId; return PartialView("NewPieceArtist", PieceArtist); }
public ActionResult NewPieceArtist(PieceArtist PieceArtist, string PieceArtist_ArtistFullName) { if (ModelState.IsValid) { Artist artist = db.Artists.FirstOrDefault(a => string.Concat(a.Artist_FirstName, " ", a.Artist_LastName).Equals(PieceArtist_ArtistFullName)); if (artist != null) { //attach the artist PieceArtist.PieceArtist_ArtistId = artist.Artist_Id; } else { //create a new artist // remove any unnecessary spaces PieceArtist_ArtistFullName.Replace(" ", " ").Trim(); string firstName = ""; string lastName; // find the position of the last space int i = PieceArtist_ArtistFullName.LastIndexOf(" "); if (i > 0) { //there are two words or more firstName = PieceArtist_ArtistFullName.Substring(0, i); lastName = PieceArtist_ArtistFullName.Substring(i, PieceArtist_ArtistFullName.Length - i); } else { //there's only one word lastName = PieceArtist_ArtistFullName; } Artist newArtist = new Artist(); newArtist.Artist_FirstName = firstName; newArtist.Artist_LastName = lastName; db.Artists.Add(newArtist); PieceArtist.PieceArtist_ArtistId = newArtist.Artist_Id; } db.PieceArtists.Add(PieceArtist); db.SaveChanges(); ViewBag.artist = db.Artists.Find(PieceArtist.PieceArtist_ArtistId); ViewBag.pieceArtistType = db.PieceArtistTypes.Find(PieceArtist.PieceArtist_PieceArtistTypeId); return PartialView("DetailsPieceArtist", PieceArtist); } else { return Content("Please review your form"); } }
public ActionResult EditPieceArtist(PieceArtist pieceArtist) { if (ModelState.IsValid) { db.Entry(pieceArtist).State = EntityState.Modified; db.SaveChanges(); ViewBag.Artist = db.Artists.FirstOrDefault(a => a.Artist_Id == pieceArtist.PieceArtist_ArtistId); ViewBag.PieceArtistType = db.PieceArtistTypes.FirstOrDefault(v => v.PieceArtistType_Id == pieceArtist.PieceArtist_PieceArtistTypeId); return PartialView("DetailsPieceArtist", pieceArtist); } else { return Content("Please review your form"); } }