C# ADO.NET-如何从表中选择多行?(并计算行数)

C# ADO.NET-如何从表中选择多行?(并计算行数),c#,linq,C#,Linq,我正在用ADO.NET填充一个C Winform应用程序。有人能告诉我如何从一个表中选择多行吗?我已经知道一种只从表中选择一行的方法,例如: private WorldCupEntities wce = new WorldCupEntities(); FOOTBALL_TEAM ft = wce.FOOTBALL_TEAM.Single(x => x.ID.Equals(aKnownIDVariable)); 顺便问一下,在我选择行之后,如何计算行数 非常感谢你们先进的技术 用于选择所有

我正在用ADO.NET填充一个C Winform应用程序。有人能告诉我如何从一个表中选择多行吗?我已经知道一种只从表中选择一行的方法,例如:

private WorldCupEntities wce = new WorldCupEntities();
FOOTBALL_TEAM ft = wce.FOOTBALL_TEAM.Single(x => x.ID.Equals(aKnownIDVariable));
顺便问一下,在我选择行之后,如何计算行数

非常感谢你们先进的技术

用于选择所有行:

要选择多行零行或多行,请执行以下操作:

为了伯爵


现在来解释一下为什么最初在哪里不适合你。我们将在哪里返回IQueryable。您试图将其设置为FOOTBALL_TEAM的实例,而不是正确的类型。相反,您可以使用var或正确的类型IQueryable,或者像上面一样使用ToList将结果转换为列表。

使用带有var关键字的隐式类型:

var ft = wce.FOOTBAL_TEAM.Where(x=>x.ID==(aKnownIDVariable));
然后计算结果:

int count = ft.Count();

要选择所有记录,请尝试此操作

或者使用如下lambda表达式:

假设WorldCupEntities类是您的数据模型

using System.Linq;

private WorldCupEntities wce = new WorldCupEntities();
var ft = wce.FOOTBALL_TEAM.Where(x => x.ID.Equals(aKnownIDVariable));
int count = ft.Count();
.Where扩展方法在football team类型的IEnumerable中提供与所需条件匹配的实体

使用LINQ计算它们很容易,因为.Count也被定义为LINQ扩展方法


您可以在MSDN文档中阅读更多关于查询运算符的内容:

使用Where而不是singleThank,但我已经用以下语句尝试了Where:FOOTBALL\u TEAM ft=wce.FOOTBALL\u TEAM.Wherex=>x.ID.EqualsaKnownIDVariable;但是Visual Studio显示错误?如果您在问题中指定了您已经尝试过的。计数以及如何知道它不起作用,也会有所帮助。显示的错误是错误2无法将类型“System.Linq.IQueryable”隐式转换为“Assignment3DBS.FOOTBALL\u TEAM”。存在显式转换。是否缺少强制转换?请参阅我的隐式输入更新帖子。非常感谢!顺便说一句,我不知道这种查询叫什么?我在谷歌上搜索了类似ADO.NET select where子句等内容。。。但结果与我所寻找的无关:这些是LINQ查询,它被称为LINQ。ADO.NET上的MSDN-ADO.NET提供对数据源(如Microsoft SQL Server)以及通过OLE DB和XML公开的数据源的一致访问。它为您提供的对象允许您轻松连接数据服务并与之交互。这将不起作用。LINQ方法不会返回足球队类型。虽然这个答案可能是正确的,但最好提供一个简短的解释。
private WorldCupEntities wce = new WorldCupEntities();
var count = wce.FOOTBALL_TEAM.Where(x => x.ID.Equals(aKnownIDVariable)).Count();
private WorldCupEntities wce = new WorldCupEntities();
    var multipleRows = wce.FOOTBALL_TEAM.Where(x => x.ID.Equals(aKnownIDVariable)).ToList();
var count = multipleRows.Count;
List<FOOTBALL_TEAM> fts = wce.FOOTBALL_TEAM.Where(x => x.ID.Equals(aKnownIDVariable)).ToList();
int count = wce.FOOTBALL_TEAM.Count(x => x.ID.Equals(aKnownIDVariable));
var ft = wce.FOOTBAL_TEAM.Where(x=>x.ID==(aKnownIDVariable));
int count = ft.Count();
private WorldCupEntities wce = new WorldCupEntities();
var listAll = from item in wce.FOOTBALL_TEAM
                  select item;
private WorldCupEntities wce = new WorldCupEntities(); 
var list = wce.FOOTBALL_TEAM.Where(x => x.ID >= aKnownIDVariable);
using System.Linq;

private WorldCupEntities wce = new WorldCupEntities();
var ft = wce.FOOTBALL_TEAM.Where(x => x.ID.Equals(aKnownIDVariable));
int count = ft.Count();