2012-04-24 10 views
0

私のasp.net mvcアプリケーションで日付を正しく使用する上で、次の問題に直面しています: -作成日時のデフォルト値は "01/01/0001 00:00:00"です。

  1. 私はSQL Server 2008データベースでデータ型が(date)のDateOfBirthプロパティを含むpatientオブジェクトを持っています。 Create

しかし、問題DateOfBirth初期値は“01/01/0001 00:00:00”になります表示するので、どのように私は、作成ビューの空にdateOfBirthのフィールドを強制することができます。 BR

+0

'DateTime?'/'Nullable 'を使用しますか? –

+0

なぜ私はDateTimeに設定する必要がありますか?Nullable 。 Dateofbirthはデータベースに指定されているようにnullにできません!!!!!! –

+0

あなたの_view_はnull可能でなければなりませんが、データベースに挿入する前に、少なくとも[必須] '検証または' [DisplayFormat] '属性をビューに追加して少なくとも機能的/視覚的に魅力的にすることはできません。 –

答えて

1

どちらのNULL可能DateTimeタイプ(DateTime?)を使用するか(イエスは患者でない限り?)は、生年月日(DOB)その年の患者を持っていることは決してないだろうことを受け入れるとヌルかのようにこれらの値を扱います/空の。その2番目のケースでは、集計コマンド(平均/最小)を変更して、特定の値を持つすべてのコマンドを除外する必要があります。

誰もDoBを持っているはずですので、DoBが提供されているレコード作成時に実際に適用する必要があります(提供されていません - レコードが作成されません)...これはどのくらいの頻度で問題になりますか?

+0

なぜ私はDateTimeに設定する必要がありますか?Nullable 。 Dateofbirthはデータベースに指定されているようにnullにできません!!!!!! –

+0

変数を定義するとき、変数は最初にインスタンス化されるときにある値を持たなければなりません。 Nullable - nullになります。それ以外の場合は、DateTimeの場合は 'DateTime.MinValue'です。オブジェクトの検証を追加して値の割り当てを強制することができます(値が設定されていない場合はコンストラクタにDoBまたはストレージルーチンのエラーがスローされます)が、メモリスペースが最初に割り当てられた瞬間にはまだ値が必要です。いくつかの値を空にしたい場合は、null可能な型にする必要があります。 – Rudu

関連する問題