4

DateEdit (dev Express C# Windows アプリケーション コントロール) の editvalue が null の場合、dateTime フィールドの null 値を保存します。

dateEdit コントロールに編集値がある場合、選択した日付が保存されます。null の場合はデフォルトの日付が保存されますが、dateEdit 値が null の場合は Null 値を保存します。

サンプル コード: エンティティ フレームワークを使用しています。

Orders ord= new Orders();
ord.OrderDate= dateEdit1.DateTime;**//here i want to save null value if the dateEdit control value is null** 
Objcontext.Orders.AddObject(ord);
Objcontext.SaveChanges();
4

5 に答える 5

2

使用していADO Command with Parametersますか?もしそうなら、これを試しみてください、

// other codes here
command.AddWithValue("@paramName",  (dateEdit.EditValue == null) ? DBNull.Value : dateEdit.EditValue);

dateEdit ControlDevExpressコンポーネントは正しいですか?

または試してみてください

Orders ord = new Orders();
ord.OrderDate = (dateEdit1.DateTime == null ? DBNull.Value : dateEdit1.DateTime); //here i want to save null value if the dateEdit control value is null 
Objcontext.Orders.AddObject(ord);
Objcontext.SaveChanges();

ここに画像の説明を入力してください

于 2012-09-07T06:33:58.360 に答える
0

Nullable型を使用します:

DateTime ? nullableDate = GetSomeDate();

これは他の値型にも当てはまります。

このような操作に役立つ可能性のあるDBNullクラスもあります。使用は次のようになります。

sqlCommand.Parameters.AddWithValue("created",nullableDate??DBNull.Value);

または類似。.NET Framework 4以降、MSはnull値にDBNull.Valueを渡すことを望んでいます。

于 2012-09-07T06:40:09.673 に答える
0

DateEditにnullのDateTimeを保存すると役立つ場合があります。

DateTime? DateEdit = null;
于 2012-09-07T06:55:26.187 に答える
0

NULL 値を受け入れるには、Field プロパティを NULL に設定する必要があります。それ以外の場合は、「0000-00-00」のように保存されます。

于 2012-09-07T06:38:16.203 に答える
0
Orders ord = new Orders();

if(dateEdit1.EditValue!=null)

{ord.OrderDate = dateEdit1.DateTime.Date}

else

{ord.OrderDate= null}

dateEdit control value is null 
Objcontext.Orders.AddObject(ord);
Objcontext.SaveChanges();

nullこれで、空の値をに保存できるようになりDateTimeましたDateEdit

于 2012-09-07T07:22:28.263 に答える