ASP MVC 2数据注释不能与VS2008 / ASP 3.5一起使用?

时间:2010-08-04 19:47:00

标签: asp.net-mvc-2 data-annotations

我已将数据注释添加到MS指导中引用的“伙伴”类。特别是[DisplayName ("Name")]似乎没有影响任何事情。我的理解是,Html.LabelFor(m => m.Attribute)助手应该引用和使用分配给注释的值,以显示该字段的标签。

我错了吗?

我注意到在视图数据类中有一个名为EntityName + EntityName_Validation的强类型视图。是否需要额外的组件?

我尝试使用其中一种类型创建视图,并且结果视图中不存在脚手架。也许这完全是一个不同的话题。 UIHint似乎也没有任何影响。

如上所述,这是VS2008中的ASP.NET 3.5代码。我正在使用Linq to SQL。也许这也取消了数据注释的充分利用。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Web;

    namespace Sample.Models {

        [MetadataType (typeof (SampleRequest_Validation))]
        public partial class SampleRequest {

            public class SampleRequest_Validation {

                [DisplayName ("Description of Project:")]
                [Required (ErrorMessage = "Project description is required.")]
                [StringLength (500, ErrorMessage = "Project description cannot exceed 500 characters.")]
                [UIHint ("TextArea")]
                string ProjectDescription {get; set;}

我怀疑我在某个地方错过了一些参考...

谢谢!

1 个答案:

答案 0 :(得分:0)

好的,有些东西不见了......

我没有将课程属性声明为公开,所以当然数据注释失败了。

上面代码片段中的最后一个lisne应为:

public string ProjectDescription {get; set;}

最小的东西......