gpt4 book ai didi

c# - 检查 LINQ 查询是否返回行

转载 作者:行者123 更新时间:2023-11-30 19:41:01 25 4
gpt4 key购买 nike

我需要检查查询是否返回行,如果返回,则将其更改为字符串,如果没有,则返回“In Progress”。我认为下面的代码可以工作,但事实总是如此:

if (System.Linq.Enumerable.Count(columns) == 0)<--- always true but it shouldn't be

当没有行返回到列时,我在 jQuery Ajax 中收到以下错误:“转换为值类型\u0027Int32\u0027 失败,因为物化值为 null。结果类型\u0027s 泛型参数或查询必须使用可为 null 的类型。”

这是我的网络方法:

using (dbPSREntities5 myEntities = new dbPSREntities5())
{
var thisId = myEntities.tbBreadCrumbs.Where(x => x.ProjectID == projectID && x.StatusID == statusID).Max(x => x.BreadCrumbID);
var columns = myEntities.tbBreadCrumbs
.Where(x => x.BreadCrumbID == thisId)
.Select(x => x.CreateDateTime)
.ToList();

if (System.Linq.Enumerable.Count(columns) == 0)
{
var formattedList = columns
.Select(d => null != d
? d.Value.ToString("MMM dd, yyyy")
: string.Empty) // this is just one example to handle null
.ToList();

return formattedList;<-- return this if there is a BreadCrumbID (columns would have a row)
}
else
{
return "In Progress";<--- there was no BreadCrumbID (columns would have 0 rows)
}

}

最佳答案

你可以使用Any()

MSDN Enumerable.Any Method

关于c# - 检查 LINQ 查询是否返回行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21337426/

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