Я новичок в MVC3, у меня есть несколько моделей, таких как, ContactPerson
, ServiceArea
, Address
и многие другие модели. У меня есть одна страница просмотра, где общие страницы просмотра, такие как Contacts
, BusinessDetails
, Address
, ServiceArea
и т. Д. Все они находятся в виде вкладок. У них есть собственные модели.Как отредактировать несколько моделей в одном представлении Razor
Моя проблема заключается в том, как редактировать несколько моделей на одной странице редактирования. Перед отправкой этого сообщения я беру на себя помощь примера MVC3 «Music Store», но есть только одна модель ALBUM
, и они дают операцию редактирования для одной модели, если есть одна или несколько моделей, как я буду редактировать на той же странице просмотра.
Я уже создал класс спецификации бизнес-класса. Это из MVC «Музыкальный магазин»
public ActionResult Edit(int id) {
Album album = db.Albums.Find(id);
ViewBag.GenreId = new SelectList(db.Genres, "GenreId", "Name", album.GenreId);
ViewBag.ArtistId = new SelectList(db.Artists, "ArtistId", "Name", album.ArtistId);
return View(album);
}
[HttpPost]
public ActionResult Edit(Album album) {
if (ModelState.IsValid) {
db.Entry(album).State = EntityState.Modified;
db.SaveChanges();
return RedirectToAction("Index");
}
ViewBag.GenreId = new SelectList(db.Genres, "GenreId", "Name", album.GenreId);
ViewBag.ArtistId = new SelectList(db.Artists, "ArtistId", "Name", album.ArtistId);
return View(album);
}
В HTTP POST
есть только на модели ALBUM
если есть больше моделей, как я выполнить операцию редактирования на нескольких моделях и посмотреть?
что им письма после того, как если (ModelState. IsValid) { для редактирования конкретной модели. – user1196392
@ user1196392 Не могли бы вы назвать что-то вроде 'Save' в ваших классах данных? Что-то вроде 'model.Album.Save();' для каждого типа в модели. – mattytommo