Предположим, мне нужно создать пользовательское выражение, чтобы сделать некоторые манипуляции с IQueryable<x>
и IQueryable<y>
. К сожалению, у меня нет идеи, как это реализовать. Это моя попытка:
Пользовательское расширение LINQ для make join
public static IQueryable<T> JoinQueries<T>(this IQueryable<T> query, IQueryable<T> expr)
{
if (query == null)
throw new ArgumentNullException("query");
//Here we make Join for x and and return result something like this:
query = from a in query join b in expr on a.Id equals b.Id select a;
return query;
}
Или сказать другие слова, которые мне нужны результат:
IQueryable <somevalue> x = query.CustomJoinExtension(Iqueryablevalue);
Я бы предположил, 'expr' должен быть' Выражение> '. Для доступа к 'Id' вам нужно использовать общее ограничение' where T: SomeEntity' –
Вы хотите объединить два разных запроса в одном типе? Или я чего-то не понял? –
@CallumLinington, спасибо, можете ли вы представить простой пример, пожалуйста, я новичок в использовании расширений и выражений. –