我正在这样做:
protected void btn_Click(object sender, EventArgs e){
var myQuery = from tab1 in Table
where myConditions
select tab1 ;
之后,我将过滤用户选择的选项:
myQuery.Where(x => x.someField == someChoice);
工作正常。但是我想用全局范围声明“ myQuery”。
我该怎么办?我正在尝试将行放在类内部和方法之外,但是我不知道应该使用哪种类型:
private someTypeThatIdontKnow myQuery;
TIA。
最佳答案
使用IQueryable<TableEntity>
,其中TableEntity
是Table
DbSet
中对象的类型。
也可能是IEnumerable<TableEntity>
,具体取决于您是针对数据库还是针对内存中集合运行查询。
您也可以通过将鼠标悬停在myQuery
上来查看要使用的类型。
关于c# - 如何声明要在C#表达式上使用的全局变量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19869631/