簡體   English   中英

將DataAnnotations添加到自動生成的DBML類? MVC 2.0 ASP.NET

[英]Adding DataAnnotations to auto-generated DBML Class? MVC 2.0 ASP.NET

我擔心這樣做,因為我的更改將在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

您可以使用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; }
}

一個可能的解決方案是http://linqtometadataaddin.codeplex.com

Linq To MetaData AddIn是一個Visual Studio 2010工具,可為dbml文件生成元數據類型。 對於Asp.net DynamicData應用程序,建議使用此添加項

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM