我有一个像这样的视图模型:
public class AccountView {
public int AccountId { get; set; }
[Required]
public string AccountName { get; set; }
}
但我希望只有当操作是“编辑”而不是“创建”时才需要AccountName字段。如何在asp.net mvc3中完成?
感谢。
答案 0 :(得分:1)
或者您可以只使用两个不同的ViewModel:一个用于编辑操作,另一个用于创建操作。 即使您重复代码(显然不是所有代码),我认为这不是一个坏习惯,因为ViewModel应该与View it的建模相关联。
答案 1 :(得分:0)
您可以实施自定义验证程序。进入Validate方法后,您将可以访问诸如(((System.Web.Mvc.ModelValidator)(this)))之类的属性.ControllerContext.Controller,您可以在其中查看ContollerContext,ViewData等。您还可以访问像
这样的属性