簡體   English   中英

具有導航屬性的模型的ASP.Net MVC ViewModel

[英]ASP.Net MVC ViewModel for models with navigation properties

嗨,我有以下型號:

public class Category()
{
 public int id{get;set;}
 public string Name{get;set;}
 public ICollection<Book> Books{get;set;}
}

public class Book()
{
  public int id{get;set;}
  public string Name{get;set;}
  public Book Book {get;set}
}

如果我想創建一個顯示類別的視圖,則可以創建一個CategoryViewModel並為其創建一個強類型的視圖。

如果我還想顯示類別的書籍列表,是否應該為書籍創建一個視圖模型並將其用作categoryviewmodel中的集合。 如果我不想公開ef模型,應該為所有子類型創建viewmodel嗎?

我剛剛開始使用MVC,並且閱讀了一些直接將實體暴露給視圖的問題。 這一個 非常感謝對此的任何指導。 在線上有關視圖模型的大多數帖子僅顯示1級。 或者他們直接公開實體。

是的,始終使用ViewModel-s顯示數據,並始終使用InputModel-s接受來自用戶的數據。 在您的情況下,您應該制作一個具有2個屬性的BookViewModel類:

public int Id { get; set; }
public string Name { get; set; }

然后在CategoryViewModel類中創建IEnumerable<BookViewModel>屬性,並將其傳遞給視圖。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM