public AlbumBaseViewModel AlbumAddNew(AlbumAddViewModel newAlbum) { var artist = ds.Artists.Find(newAlbum.ArtistId); var addedAlbum = ds.Albums.Add(mapper.Map <AlbumAddViewModel, Album>(newAlbum)); addedAlbum.Artists.Add(artist); ds.SaveChanges(); return(addedAlbum != null?mapper.Map <Album, AlbumBaseViewModel>(addedAlbum) : null); }
public ActionResult AddAlbum(AlbumAddViewModel newItem) { if (!ModelState.IsValid) { return(View(newItem)); } var addedItem = m.AddNewAlbum(newItem); if (addedItem == null) { return(View(newItem)); } else { return(RedirectToAction("details", "albums", new { id = addedItem.Id })); } }
//7. AlbumAdd public AlbumWithDetailViewModel AlbumAdd(AlbumAddViewModel newItem) { var artistAlbum = ds.Artists.Find(newItem.Id); if (artistAlbum == null) { return(null); } else { // Attempt to add the new item var addedAlbum = ds.Albums.Add(mapper.Map <AlbumAddViewModel, Album>(newItem)); addedAlbum.Artists.Add(artistAlbum); addedAlbum.Coordinator = User.Name; ds.SaveChanges(); return((addedAlbum == null) ? null : mapper.Map <Album, AlbumWithDetailViewModel>(addedAlbum)); } }
public ActionResult AddAlbum(AlbumAddViewModel newItem) { // Validate the input if (!ModelState.IsValid) { return(View(newItem)); } // Process the input var addedItem = m.AlbumAdd(newItem); if (addedItem == null) { return(View(newItem)); } else { return(RedirectToAction("Details", "Album", new { id = addedItem.Id })); } }
public AlbumBaseViewModel AddNewAlbum(AlbumAddViewModel newItem) { var u = HttpContext.Current.User.Identity.Name; var a = ds.Artists.Find(newItem.ArtistId); var g = ds.Genres.Find(newItem.GenreId); if (a == null || g == null) { return(null); } else { var addedItem = ds.Albums.Add(mapper.Map <AlbumAddViewModel, Album>(newItem)); addedItem.Artists.Add(a); addedItem.Genre = g.Name; addedItem.Coordinator = u; ds.SaveChanges(); return(addedItem == null ? null : mapper.Map <Album, AlbumBaseViewModel>(addedItem)); } }
//7. Album Add public AlbumWithDetailViewModel AlbumAdd(AlbumAddViewModel newItem) { //artists var myList = new List <Artist>(); //empty artist list foreach (var item in newItem.ArtistIds) { var a = ds.Artists.Find(item); if (a != null) { myList.Add(a); } else { return(null); } } //tracks var myTracks = new List <Track>(); //empty track list foreach (var item in newItem.TrackIds) { var b = ds.Tracks.Find(item); if (b != null) { myTracks.Add(b); } else { return(null); } } //attempt to add the new album var addedItem = ds.Albums.Add(mapper.Map <AlbumAddViewModel, Album>(newItem)); //add artists to the album's artists collection foreach (var item in newItem.ArtistIds) { var a = ds.Artists.Find(item); addedItem.Artists.Add(a); a.Albums.Add(addedItem); } //add tracks to the album's tracks collection foreach (var item in newItem.TrackIds) { var t = ds.Tracks.Find(item); addedItem.Tracks.Add(t); t.Albums.Add(addedItem); } //set the coordinator addedItem.Coordinator = User.Name; addedItem.Artists = myList; addedItem.Tracks = myTracks; //save changes ds.SaveChanges(); //return the album return(mapper.Map <Album, AlbumWithDetailViewModel>(addedItem)); }