0
我有一個視圖模型,其中我有一系列模型,因爲我需要在同一頁面中顯示並獲取多個模型。例如驗證模型中的單個對象
class ViewModel {
public RegisteratioModel Rm {get; set;}
public LoginModel LM{get; set;}
}
在每一個
這些模型,我用於驗證數據的註釋,例如
public RegistrationModel {
[Required]
public String Username {get; set;}
}
當我嘗試使用來驗證我的視圖模型的單一對象
tryValidate(viewModel.Rm)
if (ModelState.isValid) {}
ModelState
總是無效,我認爲這是因爲其他對象也正在驗證。我如何才能驗證我的模型中的單個對象?
什麼是嵌入模型的目的是什麼?如果你沒有驗證所有這些(除了一個),那麼它們是用於顯示的目的?請記住,View-Model-Controller中的模型是視圖模型,而不是數據模型。因此,您可以爲單個視圖定義視圖模型,該模型將包含視圖呈現和按預期行爲所需的所有數據。所以你不應該嵌入其他視圖模型被單個視圖顯示。 – 2014-10-08 23:50:29
@KeithPayne:如果我需要在我看來有多個模型,我可以製作部分視圖,但這是很多工作!有時我需要一個模型和一個模型列表。 View.Bag在我的開放中並不是好的方法 – JAX 2014-10-08 23:57:27