我担心这样做,因为我的更改将在dbml文件再次自动生成时被覆盖(通常是这样)。
我正在考虑做一个局部课并写出相同的属性来注释它们,但担心它会抱怨重复,而我甚至无法进行实验的原因会让我回到我的问题的第二部分。 ..
...我的dbml文件列表中的可扩展箭头丢失,右键单击并选择“查看代码”只显示一个空的分部类,如下所示...
Partial Class FPDataContext
End Class
所以,我甚至无法查看课程!任何想法都有这些问题吗?
我正在使用VS2010 RC并且我正在开发一个MVC 2.0应用程序,我希望能够使用UI注释,例如[UIHint("RelativeDateTime")]
编辑:
问题解决了,谢谢史蒂夫,这里以我的VB版编辑为例......
Imports System.ComponentModel.DataAnnotations
<MetadataType(GetType(CommentMetaData))> _
Partial Public Class Comment
End Class
Public Class CommentMetaData
<UIHint("PostedSince")> _
Public Property DateAdded() As DateTime
End Class
答案 0 :(得分:7)
您可以使用DataAnnotations的“伙伴类”功能来定义您的类型的验证。这基本上意味着您在另一个类上定义验证,但您也可以在现有类的“内部”定义此类:
[MetadataType(typeof(CommentMetaData))]
public partial class Comment {
}
public class CommentMetaData {
[StringLength(50),Required]
public object Name { get; set; }
[StringLength(15)]
public object Color { get; set; }
[Range(0, 9999)]
public object Weight { get; set; }
}
答案 1 :(得分:1)
可能的解决方案是http://linqtometadataaddin.codeplex.com:
Linq To MetaData AddIn是一个生成的Visual Studio 2010工具 dbml文件的metadatatype类。建议添加此内容 Asp.net DynamicData应用程序