C# 可能需要改为IQueryable。不需要执行ToList-IQueryable是IEnumerable的子级。执行ToList将强制在该点执行,与迭代集合相同。这是另一个主题,但由于它将进入一个全局变量,因此最好将该变量设置为派生类型较少的类型(IEnum

C# 可能需要改为IQueryable。不需要执行ToList-IQueryable是IEnumerable的子级。执行ToList将强制在该点执行,与迭代集合相同。这是另一个主题,但由于它将进入一个全局变量,因此最好将该变量设置为派生类型较少的类型(IEnum,c#,global-variables,scope,declaration,C#,Global Variables,Scope,Declaration,可能需要改为IQueryable。不需要执行ToList-IQueryable是IEnumerable的子级。执行ToList将强制在该点执行,与迭代集合相同。这是另一个主题,但由于它将进入一个全局变量,因此最好将该变量设置为派生类型较少的类型(IEnumerable),并将执行延迟到需要时。您不需要执行ToList-IQueryable是IEnumerable的子项。执行ToList将强制在该点执行,与迭代集合相同。这是另一个主题,但由于它将进入一个全局变量,因此最好将该变量设置为派生类型较少


可能需要改为
IQueryable
。不需要执行ToList-IQueryable是IEnumerable的子级。执行ToList将强制在该点执行,与迭代集合相同。这是另一个主题,但由于它将进入一个全局变量,因此最好将该变量设置为派生类型较少的类型(IEnumerable),并将执行延迟到需要时。您不需要执行ToList-IQueryable是IEnumerable的子项。执行ToList将强制在该点执行,与迭代集合相同。这是另一个主题,但由于它将进入一个全局变量,因此最好将该变量设置为派生类型较少的类型(IEnumerable),并将执行延迟到需要时。事实上,“myQuery”比我在问题中提出的要复杂得多。我正在10张桌子之间连接。那么,在这种情况下,如果我使用了很多表,那么应该使用什么TableEntity?它应该是您在
select
子句中使用的任何类型。如果使用匿名类型,则有两种选择:要么使用命名类型而不是匿名类型,要么使用
动态
。使用
dynamic
不是类型安全的。事实上,“myQuery”比我在问题中提出的要复杂得多。我正在10张桌子之间连接。那么,在这种情况下,如果我使用了很多表,那么应该使用什么TableEntity?它应该是您在
select
子句中使用的任何类型。如果使用匿名类型,则有两种选择:要么使用命名类型而不是匿名类型,要么使用
动态
。使用
dynamic
不是类型安全的。。。我喜欢答案……)一流的。。。我喜欢答案……)
protected void btn_Click(object sender, EventArgs e){

var myQuery = from tab1 in Table
              where myConditions
              select tab1 ;
myQuery.Where(x => x.someField == someChoice);
private someTypeThatIdontKnow myQuery;
private IEnumerable<TypeOfObjectInYourCollection> myQuery;
this.myQuery = ...
List<tab1> result = new List<tab1>();

protected void btn_Click(object sender, EventArgs e)
{
    var myQuery = from tab1 in Table
                  where myConditions
                  select tab1;

    myQuery.Where(x => x.someField == someChoice);

    result = myQuery.ToList();
}
 private EnumerableRowCollection query