代码之家  ›  专栏  ›  技术社区  ›  AskMe

查找DataTable中是否存在记录

  •  -1
  • AskMe  · 技术社区  · 5 年前

    我有一个控制台应用程序,可以从数据表中的SQL DB获取数据(以及列标题),如下所示。

           DataTable dt = new DataTable();
           dt = GetANumber();
    

    我必须根据DataTable中的结果(不是列)执行另一个函数。

    即:

        If( there is result returns from the DataTable)
        {
           Call another function 
        }
    

    怎么做?

    谢谢。

    2 回复  |  直到 5 年前
        1
  •  1
  •   Tim Schmelter    5 年前

    假设你是这个意思 DataTable 类,在 System.Data 命名空间:

    https://learn.microsoft.com/en-us/dotnet/api/system.data.datatable?view=net-5.0

    然后,您可以将其投射到 IEnumerable 使用 ToEnumerable() 扩展方法 系统。数据 .

    然后,您可以使用Linq扩展方法查看表中是否有任何行 Any()

    在你的 using 声明:

    using System.Data;
    using System.Linq;
    

    然后在你的方法中:

    
      if(yourDataTable.AsEnumerable().Rows.Any())
        {
           // Call your other function 
        }
    
        2
  •  1
  •   Tim Schmelter    5 年前

    您可以使用

    • dt.Rows.Count != 0 或(与 using System.Linq )
    • dt.AsEnumerable().Any()
    • dt.Rows.Cast<DataRow>().Any()
    推荐文章