我正在学习,我正在尝试使用[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.我在代码中遗漏了任何内容。
答案 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?