Expression.Call в простом лямбда-выражении. Возможно ли это?

Мне нужно сгенерировать лямбда-выражение вроде

item => item.Id > 5 && item.Name.StartsWith("Dish")

Хорошо, item.Id> 5 - это просто

var item = Expression.Parameter(typeof(Item), "item");

var propId = Expression.Property(item,"Id");
var valueId = Expression.Constant(5);
var idMoreThanFive = Expression.GreaterThan(propId, valueId);

Но вторая часть для меня более сложна ...

var propName = Expression.Property(item,"Name");
var valueName = Expression.Constant("Dish");

Как вызвать StartsWith для propName?

12
задан CodeAddicted 30 November 2011 в 05:28
поделиться