我正在使用 ASP.NET MVC4。
我希望根据从数据库中检索到的其他一些值来更改属性的显示名称,以便当我在视图中调用 @Html.LabelFor() 时,会显示正确的字段文本。
我正在使用的示例使用地址视图模型,地址的每一行具有不同的属性。如果地址是美国,则其中一个字段应为“州”。如果是英国地址,则应显示“县”。同样适用于“邮政编码”和“邮政编码”。
显然,我不希望每个国家/地区的每个不同字段都有不同的属性。
我还根据国家/地区为邮政编码应用不同的正则表达式验证规则。我怎么也能做到这一点?
这是我现在的课:
public class AddressViewModel
{
public Guid Id { get; set; }
[Display(Name = "Address_Country", ResourceType = typeof(Resources.Shared))]
[Required]
public Guid CountryId { get; set; }
[Display(Name = "Address_AddressLine1", ResourceType = typeof(Resources.Shared))]
public string AddressLine1 { get; set; }
[Display(Name = "Address_AddressLine2", ResourceType = typeof(Resources.Shared))]
public string AddressLine2 { get; set; }
[Display(Name = "Address_AddressLine3", ResourceType = typeof(Resources.Shared))]
public string AddressLine3 { get; set; }
[Display(Name = "Address_AddressLine4", ResourceType = typeof(Resources.Shared))]
public string AddressLine4 { get; set; }
[Display(Name = "Address_AddressLine5", ResourceType = typeof(Resources.Shared))]
public string AddressLine5 { get; set; }
[Display(Name = "Address_PostalCode", ResourceType = typeof(Resources.Shared))]
public string PostalCode { get; set; }
}
任何帮助都会受到极大的欢迎。
谢谢。