내 응용 프로그램에 대한 임시 보고서 기능을 만들고 있습니다. "Where"부분에 PredicateBuilder를 사용했지만 지금은 "Select"부분에서 사용할 때 성공하지 못합니다. 코드의선택 내에서 PredicateBuilder 사용
샘플 :
IQueryable<User> usersQuery = db.Users.AsQueryable();
var where = PredicateBuilder.True<User>();
//sample for the users query
where = where.And(p => p.Enabled);
var selectOrders = PredicateBuilder.True<UserOrder>();
//sample for a query inside user orders
selectOrders = selectOrders.And(p => p.Amount > 10);
usersQuery = usersQuery.Where(where); //work
var query = (from a in usersQuery
select new
{
FirstName = a.FirstName,
TotalOrders = a.UserOrders.Where(selectOrders).Count() //could not compile
}).AsQueryable();
난 당신이 DynamicLinq에서
.Select("new (TotalOrders = UserOrders.Where(BetAmount > @0).Count()")
을 할 수 있다고 생각하지 않습니다하지만 난 내에서 일부 SQL 사용자 정의 함수를 호출 원인 내가 그것을 사용할 수 없습니다 '선택'하고 DynamicLinq은 지원하지 않습니다.
어떤 컴파일 오류가 발생합니까? –
형식 인수는 사용법에서 유추 할 수 없습니다. 형식을 인수로 추출 할 수 없습니다.> (selectOrders) 어디로 전달해야합니까? Func –
Shay
a.UserOrders는 어떤 유형입니까? (selectOrders) .Count() –