gpt4 book ai didi

asp.net-mvc - 当我使用 Validator.TryValidateObject 时验证不起作用

转载 作者:行者123 更新时间:2023-12-02 02:26:43 24 4
gpt4 key购买 nike

DataAnnotations 不适用于好友类。以下代码始终验证 true。为什么?

var isValid = Validator.TryValidateObject(new Customer(), Context, results, true);

这是伙伴类。

public partial class Customer 
{
public string Name { get; set; }
public int Age { get; set; }
}

[MetadataType(typeof(CustomerMetaData))]
public partial class Customer
{
public class CustomerMetaData
{
[Required(ErrorMessage = "You must supply a name for a customer.")]
public string Name { get; set; }
}
}

这是另一个有相同问题的帖子,但没有答案。 link text

最佳答案

我在这里找到了答案:http://forums.silverlight.net/forums/p/149264/377212.aspx

MVC 识别 MetaDataType 属性,但其他项目不识别。在验证之前,需要手动注册元数据类:

TypeDescriptor.AddProviderTransparent(
new AssociatedMetadataTypeTypeDescriptionProvider(typeof(Customer), typeof(CustomerMetadata)), typeof(Customer));

var isValid = Validator.TryValidateObject(new Customer(), context, results, true);

关于asp.net-mvc - 当我使用 Validator.TryValidateObject 时验证不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2422031/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com