0

クライアント側で動的に追加できる多くの日付フィールドを持つページがあります。私はDatTimeを持っていますか?このフィールドのエディターテンプレートのプロパティ:

[Display(Name = "Bar Admission Date")]
public DateTime? AdmissionDate { get; set; }

フォームを送信すると、バインダーがフィールドの形式を認識していないため、AdmissionDateフィールドにnullデータが表示されます。

この問題をどのように解決するかについて、2つのアイデアがあります。

  1. モデルに文字列フィールドを作成し、サーバー側で解析します。シンプルでかなり速い。
  2. 日付フィールドのカスタムモデルバインダーを作成します。使用するすべてのフィールドのキーがわからないため、このソリューションは好きではありません。

より良い解決策はありますか?TextboxForメソッドをオーバーロードしてカルチャを渡す方法を検索しましたが、見つかりませんでした

4

1 に答える 1

0

Sounds like you should use an enumerable (IList/ICollection) of DateTime?. Phil Haacked has a good article on model binding to a list (even when the number of items is dynamic).

Updated

As for the formatting problem, I would look at how to set the culture for the project/model binder.

于 2012-06-18T16:32:43.553 に答える