我的问题类似于:
Compound View Model object causing remote validation failure
我的模型:
public class Address
{
public string Street { get; set; }
public string City { get; set; }
[Remote("CheckZip", "Validation")]
public string PostalCode { get; set; }
public string Country { get; set; }
}
public class OrderViewModel
{
public Address ShippingAddress { get; set; }
public Address BillingAddress { get; set; }
public string OrderItem { get; set; }
public string OrderQuantity { get; set; }
}
呈现的 HTML 创建字段 ShippingAddress_Postalcode 和 BillingAddess_PostalCode。
CheckZip 操作:
public ActionResult CheckZip (string PostalCode)
{
...
}
这当然不起作用,因为发送的不是 PostalCode,而是它的 ShippingAddress_Postalcode 或 BillingAddess_PostalCode。如何使用相同的 CheckZip 操作来处理存在于多个属性中的相同子属性?
最佳答案
CheckZip 应采用地址而不是字符串,然后检查该地址的邮政编码属性。
public ActionResult CheckZip (Address addressToCheck){ ...}
关于c# - 注释复杂类型时远程验证失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5748404/