一直以來,對於某些數據,如DateTime、int等,不支持爲其賦值爲null,但若是數據庫中爲null,咱們就須要用一些特殊手段來處理,如賦值爲MinValue等,而後判斷若是值爲MinValue時,就寫入數據庫爲null。
也有不少人開始使用網絡上下載的Jssor等系列數據類型,它能很好的解決數據類型方面致使的問題,但一些經常使用的三方控件,如DevExpress並不支持自定義的數據類型,這就給使用Jssor等系列數據類型形成了不小的障礙。
1
using System;
2
using System.Collections.Generic;
3
using System.Text;
4
5
namespace ConsoleApplication1
6 {
7
class
Program
8 {
9
static
void Main(
string[] args)
10 {
11
// DateTime?
12
DateTime? datetime1 =
new
DateTime();
13
14 datetime1 =
null;
15
Console.Write(datetime1 +
"\n");
16
Console.Write(datetime1.HasValue +
"\n");
17
try
18 {
19
Console.Write(datetime1.Value +
"\n");
20 }
21
catch
22 {
23
Console.Write(
"Error!" +
"\n");
24 }
25
if (datetime1 ==
null)
Console.Write(
"Ok 1!" +
"\n");
26
if (datetime1.HasValue ==
false)
Console.Write(
"Ok 2!" +
"\n");
27
28 datetime1 =
DateTime.Now;
29
Console.Write(datetime1 +
"\n");
30
Console.Write(datetime1.HasValue +
"\n");
31
try
32 {
33
Console.Write(datetime1.Value +
"\n");
34 }
35
catch
36 {
37
Console.Write(
"Error!" +
"\n");
38 }
39
if (datetime1 !=
null)
Console.Write(
"Ok 3!" +
"\n");
40
if (datetime1.HasValue ==
true)
Console.Write(
"Ok 4!" +
"\n");
41
42
// DateTime
43
DateTime datetime2 =
new
DateTime();
44 datetime2 =
null;
// Error
45
46
Console.ReadLine();
47 }
48 }
49 }