C# ORM对象可为空
通过阅读,我了解到对数据库中可能为null的基元类型使用C# ORM对象可为空,c#,orm,nullable,C#,Orm,Nullable,通过阅读,我了解到对数据库中可能为null的基元类型使用Nullable是合适的 对象是否需要使用?(可为空)类型 例如: public DateTime? DateCreated {get; set; } 或 在您的示例中,Nullable是有效的,因为DateTime不是引用类型。但是,对于对象(以及从对象派生的类型),不能使用Nullable,因为编译器将抛出错误;请参阅:您的示例是正确的。您需要DateTime?让ORM(比如NH)将其视为可空类型。对于物体,你不需要打问号 另外,在旁
Nullable
是合适的
对象是否需要使用?
(可为空)类型
例如:
public DateTime? DateCreated {get; set; }
或
在您的示例中,
Nullable
是有效的,因为DateTime不是引用类型。但是,对于对象(以及从对象派生的类型),不能使用Nullable
,因为编译器将抛出错误;请参阅:您的示例是正确的。您需要DateTime?
让ORM(比如NH)将其视为可空类型。对于物体,你不需要打问号
另外,在旁注中,问号T?是可为空的
的别名。编译器将T?
转换为Nullable
。如果需要证明,可以在调试器上检查此项:)更正:对于数据库中可能为null的值类型,可以使用null
。这包括,除其他外,DateTime
(和DateTimeOffset
)。
public DateTime DateCreated {get; set; }