Как преобразовать PropertyInfo в выражение свойства и использовать его для вызова универсального метода?

Как преобразовать PropertyInfo в свойство выражение, которое можно использовать для вызова метода StructuralTypeConfiguration.Ignore(Expression> propertyExpression) ?

Я пытался использовать Expression.Property( ) для создания выражения, но я получаю следующую ошибку, когда использую это выражение в качестве параметра propertyExpression:

Аргументы типа для метода не могут быть выведены из использования. Попробуйте явно указать аргументы типа.

Эта ошибка, вероятно, относится к параметру типа TProperty, который я не знаю, как указать, имея только PropertyInfo.

Я делаю это по отношению к: Используйте StructuralTypeConfiguration.Ignore Entity Framework () Игнорировать все свойства кроме указанного set.

ОБНОВЛЕНИЕ

Код, который не работает:

var propertyInfo = typeof(Foo).GetProperties()[0];
var expression = Expression.Default(typeof(Foo));
var expressionProperty = Expression.Property(expression, propertyInfo);
Ignore(expressionProperty);

12
задан johnny 5 27 March 2018 в 02:32
поделиться