2012-12-31 20 views
0

我有一个表格显示数据库中2个表格的字段。 我想在MVC4中使用数据注解模型验证技术验证此表单。 我很困惑数据注解验证属性是应该应用于单个模型(表)还是应该创建由两个表中的字段组成的独立模型。由数据库中的多个表格构成的模型的数据注释

回答

1

您应该创建一个新模型,其中包含要在视图中显示的信息。这个特定的模型有一个名称:它叫做查看模型。您应始终将视图模型从控制器操作传递给您的视图,并且您的控制器操作应始终将视图模型作为参数。然后,您可以使用验证属性修饰此视图模型上的属性。

+0

感谢您的答复。是否有任何其他方式来完成此操作,如 - 我只将数据注释属性分配给单个模型(表)一次,而且我不必再为新视图模型分配数据注释属性。 – Chinu

0

你可以做这两件事情。您可以修饰您的域模型类和查看模型。这两件事都是正确的。问题在于,为了您的观点,最好使用视图模型而不是模型类。无需公开整个域模型在您查看

只需添加using System.ComponentModel.DataAnnotations;名称空间并添加您需要在每个属性上的属性。

例如:

public class BankAccount 
{ 
    [Required] 
    public Person Person { get; set; } 
    [Required] 
    public AccountType AccountType { get; set; } 
    [Required, StringLength(256)] 
    public string BankName { get; set; } 
}