아래의 LINQ 쿼리에서 내가 잘못하고있는 것을 볼 수 없습니다. 지금까지 너무 좋아제네릭이 작동하지 않는 LINQ 쿼리
private class Pair {
public TKey Key { get; set; }
public TValue Value { get; set; }
public Pair() {
Key = default(TKey);
Value = default(TValue);
}
}
: 나는 중첩 된 개인 형 선언이 클래스 내에서
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) };
내가 프로그램을 컴파일 할 때, 나는 거기에 선택과 라인에 다음과 같은 오류가 발생합니다 : 내가 잘못 뭐하는 거지
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?)
?
토니
오류 메시지가 무엇을 말합니까? –
오류 메시지의 텍스트는 질문 끝에 있습니다. –