동일한 LET 변수를 사용하는 여러 LINQ 쿼리가 있는데, 어떻게 든 미리 정의하고 싶습니다.LINQ에서 LET을 정의합니다.
IQueryable<RouteQueryModel> query =
(from b in db.routes
let avg_rating = b.ratings.Any() ?
b.ratings.Select(r => r.rating1).Average() :
0
let distance_to_first_from_me = b.coordinates.
Select(c => c.position).
FirstOrDefault().
Distance(DbGeography.FromText(currentLocation, 4326))
let distance_to_last_from_me = b.coordinates.
OrderByDescending(c => c.sequence).
Select(d => d.position).
FirstOrDefault().
Distance(DbGeography.FromText(currentLocation, 4326))
let distance_to_from_me = distance_to_first_from_me < distance_to_last_from_me ?
distance_to_first_from_me :
distance_to_last_from_me
where b.endpoints.Any(e => values.Any(t => t == e.town.town_id))
select new RouteQueryModel
{
b = b,
distance_to_from_me = distance_to_from_me.Value,
avg_rating = avg_rating
}
);
내가 사용하는 세 가지 distance_to 내가 내 쿼리에서 사용할 수있는 것들에 대한 템플릿을 만들 수있는 방법이, 8 개 개의 다른 쿼리에서 LET가?
모두가 같은 방법에서 일어나는 이러한 쿼리입니까? – dasblinkenlight
다른 방법 –