리턴 유형이있는 메소드를 확장하려고합니다.리턴 유형이있는 메소드 확장하기
IQueryable<int> categories = GetCategoryIds();
을 그리고 나는 현재하고 있어요 : 예를 들어 다음과 같이
IQueryable<int> GetCategoryIds()
그래서, 나는 이것을 사용할 수 있습니다
IQueryable<int> categories = GetCategoryIds().Select(c => new Client() { ClientId == c.clientId });
이 작동,하지만 난 싶지 않아 그 Select
성명을하십시오. 차라리 type
을 제외한 확장 메서드를 사용하여 확장 메서드에서 Reflection을 사용하여 형식 등을 결정하고 결과를 반환 할 수 있습니다. 이게 가능
IQueryable<int> categories = GetCategoryIds().LovelyExtension<int>(1);
:
이public static IQueryable<T> LovelyExtension(this T objectType, int clientId)
가 그럼 난 (희망) 등이 확장을 사용할 수 있습니다 확장 방법은 무엇인가 같은 것? 시도했을 때, GetCategoryIds
리턴 유형이 확장 메소드와 같지 않았기 때문에 오류가 발생했습니다. 그러나 이것은 Select
문과 함께 작동합니다.
당신의 선택 버전은 이해가되지 않습니다 - 그것은'IEnumerable을'이 아닌'목록 ', 그래서 categories''로 할당 컴파일 실패 ... –