ASP MVC 5部分,类参数问题

时间:2017-12-17 05:19:19

标签: asp.net-mvc-5

我正在学习,我正在尝试使用[Display()]属性更改自动生成的分部类的参数名称,但我收到此错误消息。

严重级代码说明项目文件行抑制状态错误CS0246找不到类型或命名空间名称“Student_Age”(您是否缺少using指令或程序集引用?)EFScuffolding C:\ Users \ kusha \ source \ repos \ EFModel \ EFScuffolding \ Models \ Students.cs 20 Active

这是我自动生成的学生类代码

            namespace EFDemo.Models
            {
                using System;
                using System.Collections.Generic;

                public partial class Student
                {
                    public int StudentID { get; set; }
                    public string Student_Name { get; set; }
                    public string Student_Major { get; set; }
                    public Nullable<int> Student_Age { get; set; }
                }
            }

这是我用来修改display

参数的类
        using System;
        using System.Collections.Generic;
        using System.ComponentModel.DataAnnotations;
        using System.Linq;
        using System.Web;
        using EFScuffolding.Models;

            namespace EFDemo.Models
            {
                [MetadataType(typeof(StudentMetaData))]
                public partial class Student
                {

                }
                public class StudentMetaData
                {
                    [Required]
                    public int StudentID { get; set; }
                    [Required]
                    [Display(Student_Age = "Student Name")]
                    public string Student_Name { get; set; }
                    [Required]`enter code here`
                    [Display(Student_Major = "Student Major")]
                    public string Student_Major { get; set; }
                    [Required]
                    [Display(Student_Age = "Student Age")]
                    public Nullable<int> Student_Age { get; set; }

                }
            }

我正在使用MVC 5,EF6和Visual Studio 17.我在代码中遗漏了任何内容。

1 个答案:

答案 0 :(得分:0)

您未正确使用DisplayAttribute。您需要将其Name属性设置为要显示的文本

[Display(Name = "Student Name")] // not Student_Age = "Student Name"
public string Student_Name { get; set; }

并且同样适用于其他2个属性

但是,在asp.net-mvc中,使用视图模型,而不是部分类。请参阅What is ViewModel in MVC?

相关问题