我只想知道判断IQueryable的结果是否没有值的最好方法是什么.

如果我们有这样的方法

public static IQueryable<Table> DisplayAll()
{
    var db = new DataContext();
    var list= from data in db.Table select data;
    return list;
}

然后我们做这样的事情

var list = DisplayAll();
if(list != null)
{
     //do something --- in here even if the result set has no values it will
     // go to this line. It just say `enumeration yielded no results`
}

判断结果集是否有内容的任何可能方法??

谢谢

推荐答案

对于LINQ,list永远不会是null;如果需要,它只会表示一个"空集合".测试方法是使用Any扩展方法:

if (list.Any()) {
    // list has at least one item
}

Asp.net相关问答推荐

缓存httpmessage内容

此版本的 SQL Server 不支持用户实例登录标志.连接将关闭

ASP.NET @Register 与 @Reference

为 Web 请求实现速率限制算法的最佳方法是什么?

防止 asp.net Web 表单中的跨站点请求伪造 (csrf) 攻击

无法加载文件或程序集'System.Web.WebPages.Razor,版本 = 3.0.0.0

我可以创建 .config 文件并将其包含到 web.config 中吗?

使用 Visual Studio 2012 恢复删除的文件

为什么aspx文件会返回404(找不到页面)

SimpleMembership 与 ASP.NET MVC 4 中的自定义数据库架构

什么是实体框架中的复杂类型以及何时使用它?

在 aspnetcore (netcoreapp1.0) 中替代 System.Web.Security.Membership.GeneratePassword

如何在 ASP.net 中使用 wkhtmltopdf.exe

@(at) 登录文件路径/字符串

由 UpdatePanel 内 GridView 内的 LinkBut​​ton 触发的完整回发

使 WCF Web 服务与 GET 请求一起工作

如何判断字符串的第一个字符是否是字母,C#中的任何字母

如何将代码中的变量调用到aspx页面

ASP.NET MVC 5 Web.config:FormsAuthenticationModule或FormsAuthentication

禁用文本框的模型绑定