在三元操作中为DateTime分配null / Nullable

时间:2011-06-02 13:30:38

标签: c# .net sql datetime nullable

我有一个像

这样的陈述
DateTime ? dt = (string1 == string2) ? null; (DateTime)(txtbox.Text);

我无法编译。原因是:null无法分配到DateTime

因此,我必须声明Nullable<DateTime> nullable变量并将null替换为nullable

我不想使用if - 声明,我想在一行中执行此操作。

另外,我可以在这里使用运算符??

2 个答案:

答案 0 :(得分:57)

DateTime? dt = (string1 == string2) ? (DateTime?)null
                                    : DateTime.Parse(txtbox.Text);

答案 1 :(得分:0)

你可以这样做:

DateTime ? dt = (string1 == string2) ? new Nullable <DateTime>(): (DateTime)(txtbox.Text);