我有一个关于 LINQ 查询的问题。通常,查询返回类型。如果返回为空,则不确定它是否为空。我不确定以下内容是否会抛出异常或只是空(如果未在结果中找不到)?IEnumerable<T>
ToList()
List<string>
IEnumerable
List<string> list = {"a"};
// is the result null or something else?
IEnumerable<string> ilist = from x in list where x == "ABC" select x;
// Or directly to a list, exception thrown?
List<string> list1 = (from x in list where x == "ABC" select x).ToList();
我知道这是一个非常简单的问题,但我暂时没有可用的 VS。
它将返回一个空的枚举。它不会为空。你可以睡得很香 🙂
您还可以检查方法:.Any()
if (!YourResult.Any())
只是一个注释,仍然可以从数据库中检索记录;执行 A 将同样多的开销,但您将能够捕获从查询返回的对象.Any
.FirstOrDefault()/.Where()
var lst = new List<int>() { 1, 2, 3 };
var ans = lst.Where( i => i > 3 );
(ans == null).Dump(); // False
(ans.Count() == 0 ).Dump(); // True
(转储来自 LinqPad)
模板简介:该模板名称为【C#当结果为空时,LINQ 返回什么】,大小是暂无信息,文档格式为.编程语言,推荐使用Sublime/Dreamweaver/HBuilder打开,作品中的图片,文字等数据均可修改,图片请在作品中选中图片替换即可,文字修改直接点击文字修改即可,您也可以新增或修改作品中的内容,该模板来自用户分享,如有侵权行为请联系网站客服处理。欢迎来懒人模板【C#】栏目查找您需要的精美模板。