我有一个看起来像这样的对象:
public class MyObject
{
public Nullable<DateTime> SpecificDate {get;set;}
....other properties
}
我正在编写一个动态查询,该查询将此对象作为参数接收,并且我可能需要也可能不需要 SpecificDate:
if (condition){
TheQuery = from....
where x.AppointDate.Date == TheObject.SpecificDate.Date
}
但是,当我编写TheObject.SpecificDate时。我没有得到选择 .日期属性。
知道为什么吗?
谢谢。
你需要写TheObject.SpecificDate.Value.Date
.
但是,要小心,因为如果日期null
则会抛出。您可能需要先检查该TheObject.SpecificDate != null
。
您需要检查 SpecificDate.HasValue 属性
所以你的代码是这样的:
if (condition){
TheQuery = from....
where TheObject.SpecificDate.HasValue && x.AppointDate.Date == TheObject.SpecificDate.Value.Date
}