2012-05-11 6 views
1
Public class UserMetdata 
    { 
    [Required] 
    [Display(Name="User ID")] 
    public int UserID { get; set; } 

    [Display(Name="User Name")] 
    public string UserName { get; set; } 

} 

私は表示にUserNameを表示したくありません。 Annotationを必要としないように作成するのと同じです。 1つの解決策は、UserNameフォームクラスを削除することですが、私はそれをしたくない。 データアノテーションを使用してどのように行うことができますか。Asp.net MVC3でData Annotationを使用して削除の方法がありますか?

+0

ビュー用のコードを表示してください。 – DaveRead

+0

これは通常、ビュースルーモデルで使用します。私がしなければならないのは、その物件が見えるようにすることだけです。 – Padmalochan

+0

私は、[必須]のような[NotRequired]属性を持つことができます。ビューではその属性を完全に表示しません。 – Padmalochan

答えて

4

あなたがこれを使用すると、フレームワークをさせたときにのみ動的@Html.DisplayForModel()などを呼び出すことによって、あなたのビューを生成し、あなたがは、そのための表示テンプレートを定義して持っていないに動作します

[ScaffoldColumn(false)] 
public string UserName { get; set; } 

そのプロパティにScaffoldColumnAttributeを使用することができますモデルはViews/Shared/DisplayTemplatesまたはViews/ControllerName/DisplayTemplatesです。それ以外の場合は、その表示テンプレートを編集して対応する行を削除する必要があります。

+0

+1それは正しいです:) – mattytommo

+1

いいえ、そのプロパティは表示されます。しかし、それは – Padmalochan

+0

であるべきではありません。この属性は、フレームワークが実行時にビューを動的に作成できるようにするときに実際に見られます。そのクラスの静的なDisplayTemplateを定義しましたか? – archil

関連する問題