示例#1
0
        public ActionResult Edit(int id)
        {
            var mailForm = DB2.Emails.Find(id);
            // файлы, присоединенные к форме
            var mediaFiles = mailForm.MediaFiles
                             .Select(x => new { x.Id, x.ImageName })
                             .ToList()
                             .Select(x => Tuple.Create(x.Id, x.ImageName))
                             .ToList();

            var mediaFilesIds = mediaFiles.Select(y => y.Item1).ToList();

            // все доступные файлы, кроме уже присоединенных
            var allMediaFiles = DB2.MediaFiles
                                .Where(x => x.EntityType == EntityType.Email && !mediaFilesIds.Contains(x.Id))
                                .Select(x => new { x.Id, x.ImageName })
                                .ToList()
                                .Select(x => Tuple.Create(x.Id, x.ImageName))
                                .ToList();

            var model = new MailFormUi()
            {
                Body          = mailForm.Body,
                Description   = mailForm.Description,
                Id            = mailForm.Id,
                Subject       = mailForm.Subject,
                MediaFiles    = mediaFiles,
                AllMediaFiles = allMediaFiles
            };

            return(View(model));
        }
示例#2
0
        public ActionResult Edit(MailFormUi model)
        {
            var mailForm = DB2.Emails.SingleOrDefault(x => x.Id == model.Id);

            if (mailForm == null)
            {
                return(RedirectToAction("Index"));
            }

            mailForm.Body    = model.Body;
            mailForm.Subject = model.Subject;
            DB2.SaveChanges();

            return(RedirectToAction("Edit", new { id = model.Id }));
        }