序列化DataAnnotations

时间:2010-10-31 20:05:55

标签: c# reflection serialization data-annotations

我想将DataAnnotations存储在数据库中。如何通过反射(或其他方法)检索DataAnnotation的字符串表示?

示例

public class Product
    {
        [DisplayName("Price")]
        [Required]
        [RegularExpression(@"^\$?\d+(\.(\d{2}))?$")]
        public decimal UnitPrice { get; set; }
    }

结果可以是XML或JSON数据,只要它是字符串化的。

2 个答案:

答案 0 :(得分:1)

这与retrieve-custom-attribute-parameter-values非常相似,我会将其作为解决方案的基础

答案 1 :(得分:1)

您最好编写自己的验证提供程序,然后以更方便的形式将验证规则存储在数据库中。解析字符串以尝试实例化属性似乎比必要的工作更多。 :)

示例验证提供程序:http://bradwilson.typepad.com/blog/2009/10/enterprise-library-validation-example-for-aspnet-mvc-2.html