4

我正在使用 MSDN Dynamic linq to sql 包。它允许使用字符串进行查询。

但是,返回的类型是 anIQueryable而不是IQueryable<T>。我没有这个ToList()方法。

如何在不手动枚举的情况下立即执行IQueryable

我的目标是将数据绑定到 linqtosql 数据源上的 Selecting 事件,并引发 datacontext 处理异常。不过,我可以将查询设置为网格视图上的数据源。

非常感谢任何帮助!谢谢。

动态 linq to sql 是 Visual Studio 附带的示例中的一个。

4

1 回答 1

2

IQueryable和之间的区别在于IQueryable<T>第二个是键入的,而第一个不是。要转换IQueryableIQueryable<T> 您可以使用该Cast<T>()方法。

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

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

于 2010-03-12T23:25:49.070 回答