Оптимизация кода C# ASP MVC
Таким образом, это методы, которые обрабатывают загрузку изображений в контроллере .
[HttpPost] [ValidateAntiForgeryToken] public ActionResult Edit([Bind(Include = "AlbumId,GenreId,ArtistId,Title,Price,AlbumArtUrl")] Album album, HttpPostedFileBase file) { if (ModelState.IsValid) { if (file != null) { file.SaveAs(HttpContext.Server.MapPath("/Content/Images/") + file.FileName); album.AlbumArtUrl = ("/Content/Images/") + file.FileName; } db.Entry(album).State = EntityState.Modified; db.SaveChanges(); return RedirectToAction("Index"); } ViewBag.ArtistId = new SelectList(db.Artists, "ArtistId", "Name", album.ArtistId); ViewBag.GenreId = new SelectList(db.Genres, "GenreId", "Name", album.GenreId); return View(album); }
[HttpPost] [ValidateAntiForgeryToken] public ActionResult Create([Bind(Include = "AlbumId,GenreId,ArtistId,Title,Price,AlbumArtUrl")] Album album, HttpPostedFileBase file) { if (ModelState.IsValid) { if (file != null) { file.SaveAs(HttpContext.Server.MapPath("/Content/Images/")+file.FileName); album.AlbumArtUrl = ("/Content/Images/")+file.FileName; } db.Albums.Add(album); db.SaveChanges(); return RedirectToAction("Index"); } ViewBag.ArtistId = new SelectList(db.Artists, "ArtistId", "Name", album.ArtistId); ViewBag.GenreId = new SelectList(db.Genres, "GenreId", "Name", album.GenreId); return View(album); }
Таким образом , в основном первые строки методов одинаковы , и я хочу создать отдельный метод под названием Upload и вызвать его внутри Create() и Edit () . Разве это возможно, может ли кто-нибудь направить меня или сказать, как ? Спасибо.
Что я уже пробовал:
Я объяснил выше этот вопрос.