public TrackWithAudioDetailsViewModel EditTrack(TrackEditClipViewModel newItem)
        {
            var track = ds.Tracks.SingleOrDefault(t => t.Id == newItem.Id);

            if (track == null)
            {
                return(null);
            }
            else
            {
                byte[] clipBytes = new byte[newItem.ClipUpload.ContentLength];
                newItem.ClipUpload.InputStream.Read(clipBytes, 0, newItem.ClipUpload.ContentLength);
                track.SampleClip      = clipBytes;
                track.ClipContentType = newItem.ClipUpload.ContentType;
                ds.Entry(track).CurrentValues.SetValues(newItem);
                ds.SaveChanges();

                return(mapper.Map <Track, TrackWithAudioDetailsViewModel>(track));
            }
        }
Beispiel #2
0
        public ActionResult Edit(int?id, TrackEditClipViewModel newItem)
        {
            if (!ModelState.IsValid)
            {
                return(RedirectToAction("edit", new { id = newItem.Id }));
            }
            if (id.GetValueOrDefault() != newItem.Id)
            {
                return(RedirectToAction("index"));
            }
            var editedItem = m.EditTrack(newItem);

            if (editedItem == null)
            {
                return(RedirectToAction("edit", new { id = newItem.Id }));
            }
            else
            {
                return(RedirectToAction("details", new { id = newItem.Id }));
            }
        }