示例#1
0
        public TrackWithDetails TrackEditInfo(TrackEditInfo newItem)
        {
            var o = ds.Tracks.Find(newItem.Id);

            byte[] mediaBytes = new byte[newItem.MediaUpload.ContentLength];
            newItem.MediaUpload.InputStream.Read(mediaBytes, 0, newItem.MediaUpload.ContentLength);

            o.Media            = mediaBytes;
            o.MediaContentType = newItem.MediaUpload.ContentType;

            if (o == null)
            {
                return(null);
            }
            else
            {
                ds.Entry(o).CurrentValues.SetValues(newItem);
                ds.SaveChanges();

                return(mapper.Map <Track, TrackWithDetails>(o));
            }
        }
示例#2
0
        public ActionResult Edit(int?id, TrackEditInfo newItem)
        {
            if (!ModelState.IsValid)
            {
                return(RedirectToAction("edit", new { id = newItem.Id }));
            }

            if (id.GetValueOrDefault() != newItem.Id)
            {
                return(RedirectToAction("index"));
            }

            var editedItem = m.TrackEditInfo(newItem);

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