涉及泛型的LINQ查询不起作用

涉及泛型的LINQ查询不起作用,linq,Linq,我看不出下面的LINQ查询有什么不对 我正在构建一个泛型类型: public class MyClass<TKey, TValue> : IList<TValue> { ... } 到目前为止还不错。现在,在MyClass中,我有一个方法,它有一个TKey对象数组。我想使用LINQ提取一页TKey对象,并创建一个较小的Pair对象数组。以下是我构建的查询: TKey[] Keys = ...; IQueryable<Pair> query = from ke

我看不出下面的LINQ查询有什么不对

我正在构建一个泛型类型:

public class MyClass<TKey, TValue> : IList<TValue> { ... }
到目前为止还不错。现在,在
MyClass
中,我有一个方法,它有一个
TKey
对象数组。我想使用LINQ提取一页
TKey
对象,并创建一个较小的
Pair
对象数组。以下是我构建的查询:

TKey[] Keys = ...;
IQueryable<Pair> query = from key in Keys
                         select new Pair { Key = key, Value = default( TValue ) };
TKey[]键=。。。;
IQueryable query=从键输入键
选择新对{Key=Key,Value=default(TValue)};
编译程序时,在包含select的行上出现以下错误:

Cannot implicitly convert type 
    'System.Collections.Generic.IEnumerable<MyNameSpace.MyClass<TKey,TValue>.Pair>'
to  'System.Linq.IQueryable<VirtualLoadApp.MyClass<TKey,TValue>.Pair>'. 
An explicit conversion exists (are you missing a cast?)
无法隐式转换类型
'System.Collections.Generic.IEnumerable'
至“System.Linq.IQueryable”。
存在显式转换(是否缺少强制转换?)
我做错了什么

托尼

试试这个:

            var q = from key in Keys
                    select (new Pair { Key = key, Value = default(TValue) });
            IQueryable<Pair> query = q.AsQueryable<Pair>();
var q=from键入键
选择(新对{Key=Key,Value=default(TValue)});
IQueryable query=q.AsQueryable();
试试这个:

            var q = from key in Keys
                    select (new Pair { Key = key, Value = default(TValue) });
            IQueryable<Pair> query = q.AsQueryable<Pair>();
var q=from键入键
选择(新对{Key=Key,Value=default(TValue)});
IQueryable query=q.AsQueryable();

错误消息说什么?错误消息的文本在问题的末尾。错误消息说什么?错误消息的文本在问题的末尾。