Как создать выражение ParameterExpression для родительской части свойства навигации от 1 до *?
Следующие работы для дочерней сущности:
var parameter = Expression.Parameter(
typeof(T), // where T is the entity type
GetParameterName()); // helper method to get alias
Попытка чего-то подобного в TParent приводит к запросу, исходящему из Context, а не как свойство дочернего элемента.
Лямбда-эквивалент будет выглядеть так:
var q = from f in context.Foo
where f.Bar.BarId == 1...
// where bar is the Navigation Property to the parent
Изменить для ясности:
Я использую следующее для создания выражения члена из свойства:
Expression exp = Expression.Equal(
Expression.Property(parameter, "SomeColumn"),
Expression.Constant("SomeValue"));
Похоже, что для этого случая я должен использовать MemberExpression вместо ParameterExpression.