アプリ版:「スタンプのみでお礼する」機能のリリースについて

C#でLinqを使用し、DateTime型の値を取得しようとしているですが、
DateTime型の変数に格納する際に、以下のようなエラーが発生してしまいます。
'System.DateTime?' を 'System.DateTime' に暗黙的に変換できません。
どうやらDBから取得したDateTimeの値が、「System.DateTime?」という型になっているようなのですが、原因は何でしょうか?
また対応方法を教えてください。
尚、DBはSQL Server2005で.Net3.5です
宜しくお願いします。

A 回答 (2件)

>「System.DateTime?」という型


nullを考慮している型ですので、実際に
>DateTime型の変数に格納する
ときにnullだったらどのような値にするかを指定してあげればよさそう。

// null だったら 今日日付 をいれる。
DateTime value = dbvalue ?? DateTime.Now;


もっと手前でNullableでない型で格納できるかも。。。
    • good
    • 0

未検証です。



http://ufcpp.net/study/csharp/sp2_nullable.html

HasValueでnullか調べて
Valueプロパティでなんとかしてみたらどうだろう?
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!