public IHttpActionResult PutMusic(int id, Music music) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != music.Id) { return(BadRequest()); } _db.Entry(music).State = EntityState.Modified; try { _db.SaveChanges(); } catch (DbUpdateConcurrencyException) { if (!MusicExists(id)) { return(NotFound()); } throw; } return(StatusCode(HttpStatusCode.NoContent)); }
public ActionResult Create([Bind(Include = "Id,FullName,ArtistType")] Artist artist) { if (ModelState.IsValid) { db.Artists.Add(artist); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(artist)); }
public ActionResult Create(Song song) { if (!ModelState.IsValid) { //return the same page with error messages return(View(song)); } //save to database _db.Songs.Add(song); _db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Create([Bind(Include = "Id,Title,Genre,ArtistId")] Album album) { if (ModelState.IsValid) { db.Albums.Add(album); db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.ArtistId = new SelectList(db.Artists, "Id", "FullName", album.ArtistId); return(View(album)); }
private bool SetTaskItemStatus(long itemId, Music.Core.TaskStatus status, out TaskType type) { bool result = false; type = TaskType.DiskPath; using (var db = new MusicDb(connectionString)) { var taskItem = db.TaskItems.Find(itemId); try { taskItem.Status = status;// Music.Core.TaskStatus.InProgress; type = taskItem.Type; db.SaveChanges(); result = true; } catch (Exception xe) { if (xe.InnerException != null) { log.Information($"{taskItem} error: {xe.GetType().Name}, inner exception {xe.InnerException.GetType().Name} {xe.InnerException.Message}"); } else { log.Information($"{taskItem} error: {xe.GetType().Name}, {xe.Message}"); } } } return(result); }
private void TryAddTaskAgain(long itemId) { using (var db = new MusicDb(connectionString)) { var taskItem = db.TaskItems.Find(itemId); var maxRetries = options.MaxTaskRetries; bool requeue = false; if (taskItem.RetryCount < maxRetries) { taskItem.Status = Music.Core.TaskStatus.Pending; taskItem.ScheduledAt = DateTimeOffset.Now; taskItem.RetryCount++; requeue = true; log.Information($"{taskItem} requeued, retry {taskItem.RetryCount} of {maxRetries}"); } else { taskItem.Status = Music.Core.TaskStatus.Failed; taskItem.FinishedAt = DateTimeOffset.Now; log.Information($"{taskItem} failed - retries exhausted"); } db.SaveChanges(); if (requeue) { QueueTask(taskItem); } } }
public ActionResult Create(Song song) { if (!ModelState.IsValid) { var vm = new CreateSongViewModel { Song = song, Albums = _db.Albums.ToList() }; //return the same page with error messages return(View(vm)); } //save to database _db.Songs.Add(song); _db.SaveChanges(); return(RedirectToAction("Index")); }