안녕 전문가 엔티티에 LINQ에서 특정 목록의 결과를 반환합니다 :어떻게이 코드를 작성 currenly
public IList<TResult> GetCustomQuery<TResult>(int orderID, Func<Order, TResult> selector)
{
using(RepositoryDataContext = new NorthwindEntities())
{
IList<TResult> res = (from od in RepositoryDataContext.Order_Details
join o in RepositoryDataContext.Orders
on od.OrderID equals o.OrderID
join p in RepositoryDataContext.Products
on od.ProductID equals p.ProductID
join c in RepositoryDataContext.Customers
on o.CustomerID equals c.CustomerID
where o.OrderID > orderID
select new
{
o.OrderID,
od.UnitPrice,
od.Quantity,
p.ProductName,
c.CompanyName
}).Select<Order, TResult>(selector).ToList();
}
}
내가 특정 형식 (TResult)에서 기관 내 LINQ의 결과를 반환하고자합니다. Lambda Expression을 사용하여이 코드를 작성하는 것은 조인 때문에 어렵습니다. 이 줄의 예외는 다음과 같습니다. <을 선택하십시오. TResult> (선택자) 어떻게 고칠 수 있습니까? 감사합니다.
그리고 어떤 예외가 있습니까? –
'은 'System.Linq.IQueryable'을 'System.Linq.IQueryable '로 변환 할 수 없으며 'System.Linq.IQueryable '에 대한 정의를 포함하지 않습니다. 'Select'및 최상의 확장 메서드 오버로드 'System.Linq.Queryable.Select (System.Linq.IQueryable , System.Linq.Expressions.Expression >)가 있습니다. 일부 잘못된 인수' –
Arian
'Select new {}'문은 다른 유형으로 형변환 할 수없는 비정상 유형을 반환 할 것이고 메소드에서 반환 할 수 없습니다. – Novice