我有一个使用Entity Framework创建的模型(来自我的数据库)。这给了我一个自动生成的Partial Class,其中包含所有必需的属性。
我想在其中一个属性中添加UIHint数据注释,但我不想将该代码添加到自动生成的文件中。
有没有办法通过另一个Partial Class将UIHint添加到现有属性?或者我错过了如何使用MVC的基本部分?
juhan_h的答案非常有效,但是在VB.NET中它可以帮助任何人:
生成的课程
Partial Public Class MyEntity
Public Property Id As Integer
Public Property Name As String
End Class
元数据类
<MetadataType(GetType(MyEntity_Metadata))>
Partial Public Class MyEntity
End Class
Class MyEntity_Metadata
<DisplayName("Key of the entity")>
Public Property Id As Integer
<UIHint("MyTextBox")>
Public Property Name As String
End Class
答案 0 :(得分:1)
您可以使用关联的元数据类来使用其他属性修饰自动生成的类。
Here是一篇描述应该适用于您的情况的概念的文章。
示例强>
生成的课程
public partial class MyEntity
{
public int Id { get; set; }
public string Name { get; set; }
}
元数据类
[MetadataType(typeof(MyEntityMetadata))]
public partial class MyEntity
{
}
class Product_Metadata
{
[DisplayName("Key of the entity")]
public int Id { get; set; }
[UIHint("MyTextBox")]
public string Name { get; set; }
}
我真的不会说VB.NET所以示例是在c#中,但它们应该很容易转换为VB。