У меня есть метод, похожий на
ISomething<U> Foo<T, U>(Expression<Func<T, U>> selector)
{
Expression<Func<T, object>> generalSelector =
ChangeSelectorReturnType<object>(selector);
Use(generalSelector);
return new Something<U>(selector);
}
Какой самый простой код для реализации ChangeSelectorReturnType
при условии, что selector
всегда будет простым средством доступа к свойствам, таким как x => x.Property
?
Я знаю, что решение , представленное в другом вопросе , работает, но оно требует посетителя с полным выражением, потому что никаких предположений не делается.Я в порядке с предположениями в этом случае.