C# 查找数据表中是否存在记录
我有一个控制台应用程序,可以从数据表(以及列标题)中的SQL DB获取数据,如下所示C# 查找数据表中是否存在记录,c#,.net,C#,.net,我有一个控制台应用程序,可以从数据表(以及列标题)中的SQL DB获取数据,如下所示 DataTable dt = new DataTable(); dt = GetANumber(); 我必须根据数据表中的结果(而不是列)执行另一个函数 即: If( there is result returns from the DataTable) { Call another function } 如何做到这一点 谢谢。假设您指的是
DataTable dt = new DataTable();
dt = GetANumber();
我必须根据数据表中的结果(而不是列)执行另一个函数
即:
If( there is result returns from the DataTable)
{
Call another function
}
如何做到这一点
谢谢。假设您指的是
System.Data
命名空间中的DataTable
类:
然后可以使用System.Data
中的ToEnumerable()
扩展方法将其强制转换为IEnumerable
然后,您可以使用Linq扩展方法any()
在中使用语句:
using System.Data;
using System.Linq;
然后在您的方法中:
if(yourDataTable.AsEnumerable().Rows.Any())
{
// Call your other function
}
假设您指的是System.Data
命名空间中的DataTable
类:
然后可以使用System.Data
中的ToEnumerable()
扩展方法将其强制转换为IEnumerable
然后,您可以使用Linq扩展方法any()
在中使用语句:
using System.Data;
using System.Linq;
然后在您的方法中:
if(yourDataTable.AsEnumerable().Rows.Any())
{
// Call your other function
}
你可以用
dt.Rows.Count!=0
或(使用System.Linq时使用)
dt.AsEnumerable().Any()
或
dt.Rows.Cast().Any()
您可以使用
dt.Rows.Count!=0
或(使用System.Linq时使用)
dt.AsEnumerable().Any()
或
dt.Rows.Cast().Any()
旁注:如果要在下一行中使用不同的实例覆盖数据表,则无需初始化数据表。最好使用数据表dt=GetANumber()
then。如果GetABumber
将返回null,那么您无论如何都无法通过第一次初始化来防止返回null。您必须在以后处理该问题。旁注:如果要在下一行中使用其他实例覆盖数据表,则不需要初始化数据表。最好使用数据表dt=GetANumber()
then。如果GetABumber
将返回null,那么您无论如何都无法通过第一次初始化来防止返回null。你必须事后处理。