gpt4 book ai didi

c# - 在 linq 表达式中检查 DateTime 是否为 null

转载 作者:行者123 更新时间:2023-11-30 12:23:27 25 4
gpt4 key购买 nike

有什么方法可以检查 linq 表达式中的 DateTime 是否为 null?我有 IEnumeable 方法,我从数据库中返回数据

return _requestRepository.ExecuteProcReader(
myRequest,
new SqlParameter("@userName", user)).Select(items => new Feed
{
Id = (int)items[0],
Title = items[1].ToString(),
Body = items[2].ToString(),
Link = items[3].ToString(),
PubDate = (DateTime) items[4]
});

items[4] 是一个日期时间,在数据库中可以为空。那么,如何检查类似

if(items[4] is DateTime)
{
PubDate = (DateTime) items[4]
}

最佳答案

另一种选择是在类 Feed 声明中将 PubDate 声明为可为空。

像这样:

class Feed {
public DateTime? PubDate {get;set;}
...
}

这会将真相从数据库暴露到数据访问层,并将您的空检查上移一个级别。

参见:Nullable types in c#

关于c# - 在 linq 表达式中检查 DateTime 是否为 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36744455/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com