C# 接受linq null
我这里有一个linq查询,它是用实体框架完成的。查询将每隔一段时间返回null。所以我必须编写linq查询来接受这个空值。然而,这不起作用。if语句(viewsByUdHours!=null)返回true,然后仍然执行if语句中的代码行C# 接受linq null,c#,.net,linq,asp.net-mvc-4,linq-to-entities,C#,.net,Linq,Asp.net Mvc 4,Linq To Entities,我这里有一个linq查询,它是用实体框架完成的。查询将每隔一段时间返回null。所以我必须编写linq查询来接受这个空值。然而,这不起作用。if语句(viewsByUdHours!=null)返回true,然后仍然执行if语句中的代码行 DateTime startDateTimeHours = now.AddHours(-24); var viewsByIdHours = db.ArticleViews .Where(av => av
DateTime startDateTimeHours = now.AddHours(-24);
var viewsByIdHours = db.ArticleViews
.Where(av => av.ViewCreated >= startDateTimeHours)
.GroupBy(av => av.ArticleID)
.Select(g => new { ArticleID = g.Key, Count = g.Count() });
if (viewsByIdHours != null)
{
var highestCountHours = viewsByIdHours.Max(v => v.Count);
var topArticlesHours = viewsByIdHours.Where(a => a.Count == highestCountHours);
var topArticleHours = topArticlesHours.First();
var articleTitleHours = db.Articles.Where(x => x.ID == topArticleHours.ArticleID).Select(x => x.title).First();
ViewBag.activityDay = articleTitleHours + " (" + topArticleHours.Count + ")";
}
else
ViewBag.activityDay = "NaN";
我在“var highestCountHours=viewsbydhours.Max(v=>v.Count);
”行中得到此错误:
viewByIdHours
将永远不会为空。将if语句更改为viewByIdHours.Any()
。变量viewByIdHours
只保存查询,查询永远不会为空。viewByIdHours
永远不会为空。将if语句更改为viewByIdHours.Any()
。变量viewByIdHours
只保存查询,查询永远不会为空。viewByIdHours
永远不会为空。将if语句更改为viewByIdHours.Any()
。变量viewByIdHours
只保存查询,查询永远不会为空。viewByIdHours
永远不会为空。将if语句更改为viewByIdHours.Any()
。变量viewByIdHours
只保存查询,查询永远不会为空。我希望它会有所帮助。因为您有一个空值:
var viewsByIdHours = db.ArticleViews
.Where(av => av.ViewCreated >= startDateTimeHours)
.GroupBy(av => av.ArticleID)
.Select(g => new { ArticleID = g.Key, Count = g.Count()??0 });
因此,如果您的字段
Count
为空,则它将为0 我希望这会有所帮助。因为您有一个空值:
var viewsByIdHours = db.ArticleViews
.Where(av => av.ViewCreated >= startDateTimeHours)
.GroupBy(av => av.ArticleID)
.Select(g => new { ArticleID = g.Key, Count = g.Count()??0 });
因此,如果您的字段
Count
为空,则它将为0 我希望这会有所帮助。因为您有一个空值:
var viewsByIdHours = db.ArticleViews
.Where(av => av.ViewCreated >= startDateTimeHours)
.GroupBy(av => av.ArticleID)
.Select(g => new { ArticleID = g.Key, Count = g.Count()??0 });
因此,如果您的字段
Count
为空,则它将为0 我希望这会有所帮助。因为您有一个空值:
var viewsByIdHours = db.ArticleViews
.Where(av => av.ViewCreated >= startDateTimeHours)
.GroupBy(av => av.ArticleID)
.Select(g => new { ArticleID = g.Key, Count = g.Count()??0 });
因此,如果您的字段
Count
为空,则它将为0 viewByIdHours永远不会为空。将if语句更改为viewByIdHours.Any()
np,变量viewByIdHours只保存查询(不确定确切的类型),查询永远不会为null。viewByIdHours永远不会为null。将if语句更改为viewByIdHours.Any()
np,变量viewByIdHours只保存查询(不确定确切的类型),查询永远不会为null。viewByIdHours永远不会为null。将if语句更改为viewByIdHours.Any()
np,变量viewByIdHours只保存查询(不确定确切的类型),查询永远不会为null。viewByIdHours永远不会为null。将if语句更改为viewByIdHours.Any()
np,变量viewByIdHours只保存查询(不确定确切类型),查询将永远不会为null。