动态查询如何立即执行?

4
我正在使用MSDN动态linq到sql包。它允许使用字符串进行查询。
但是,返回的类型是IQueryable而不是IQueryable。我没有ToList()方法。
如何立即执行此操作,而无需手动枚举IQueryable?
我的目标是在linqtosql数据源上绑定选择事件,但会引发datacontext已释放异常。但我可以将查询设置为gridview上的数据源。
非常感谢任何帮助!谢谢。
动态linq to sql是Visual Studio附带的示例之一。
1个回答

2

IQueryableIQueryable<T> 的区别在于第二个是有类型的,而第一个没有。要将 IQueryable 转换为 IQueryable<T>,您可以使用 Cast<T>() 方法。

IQueryable myQueryable = ...;
IQueryable<MyType> myTypedQueryable = myQueryable.Cast<myQueryable>();
IList<MyType> myList = myTypedQueryable.ToList();

显然,myQueryable的内容必须可以转换为MyType。要选择某种类型的实例,您可以在进行转换之前使用TypeOf<T>()方法。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接