c# – 找不到MaxLength DataAnnontation

我正在尝试创建一个新的Orchard CMS模块来模仿我构建的另一个MVC项目.我使用VS 2013 Express与最新的Orchard v1.72.我有一个包含using语句的类

使用System.ComponentModel.DataAnnotations;

我有以下属性

    [MaxLength(16)]
    public virtual string Symbol { get; set; }

    [StringLength(16)]
    public virtual string SymbolSequence { get; set; }

    [StringLength(512)]
    public virtual string Notes { get; set; }

    public virtual double Begin { get; set; }

    public virtual double End { get; set; }

    [Range(0.01, int.MaxValue, ErrorMessage = "Please enter a value 0.01 or larger.")]
    public virtual double Increment { get; set; }

是否有任何理由在StringLength和Range注释时找不到MaxLength注释?

它们都驻留在相同的System.ComponentModel.DataAnnotations命名空间中,并且在其他项目中没有问题.

我该如何解决?

编辑Retargeting for .NET 4.5似乎解决了这个问题

最佳答案 MaxLength DataAnnotation是在.NET Framework 4.5中引入的.

StringLength和Range在3.5 SP1中引入.

点赞