2011-08-16 12 views
5

私はMVCモデルクラスにいくつかのDateTimeフィールドを持っています - いくつかは入力として日付を必要とするものとTimeを入力として必要とするものですが、どちらもDateTimeプロパティです。MVC3では、同じタイプのEditorTemplatesを複数使用できますか?

日付であることを意味するプロパティに対して日付ピッカーを生成するDateTime用のEditorTemplateを持つことは可能でしょうか、時間を意味するプロパティの時間ピッカーですか?

答えて

9

はい、ここでは一つの方法である:~/Views/Shared/EditorTemplates(または~/Views/Shared/DisplayTemplates

、お気に入りのビューエンジンを使用するテンプレートファイルを作成します(例では、カミソリ/ C#のを使用しています)

ファイルDate.cshtml

replace this with a real date picker 

ファイルTime.cshtml

replace this with a real time picker 

その後、私はNモデル:UIHint属性名は、テンプレートのファイル名と一致する必要があり、あなたはすでにそれを持っていない場合は、適切なusing文/アセンブリ参照が必要になりますのでUIHintは、System.ComponentModel.DataAnnotationsである

[UIHint("Date")] 
public DateTime DateProperty { get; set; } 

[UIHint("Time")] 
public DateTime TimeProperty { get; set; } 

。また

は、あなたの時間を表現するためにTimeSpanを使用する - それはそのTimeOfDayプロパティのDateTimeリターン...

+0

おかげでジョンは、私が試してみることをあげるものです。 –

関連する問題