Как изменить выражение, чтобы передать его методу - PullRequest
2 голосов
/ 14 июля 2011

Проблема в следующем:

public GetAll(Expression<Func<CampModel, bool>> whereCondition)
{
   // and it should call another GetAllCampsFromRepo method that gets Camps from a repository
}

public IList<Camp> GetAllCampsFromRepo(Expression<Func<Camp, bool>> whereCondition)
{
     return // Blah blah the list of Camps
}

Поэтому вопрос заключается в том, как правильно вызвать второй метод из тела первого метода, сопоставляя свойства разных типов - объект CampModel и объект Camp (они похожи, норазные)

Как я могу преобразовать whereCondition, чтобы я мог передать его в GetAllCampsFromRepo?Потому что я не могу передать его как есть:

GetAllCampsFromRepo(whereCondition)

Могу ли я использовать что-то вроде System.Linq.Expressions.ExpressionVisitor и изменить исходное выражение?Как это сделать?

1 Ответ

3 голосов
/ 14 июля 2011
...