Выражение AutoMapper и Linq

Я предоставляю Dto, сгенерированный AutoMapper, своим службам WCF. Я хотел бы предложить нечто подобное из WCF: IList GetPersonByQuery(Expression> predicate); К сожалению, мне нужно обратно дерево выражений Person, так как мой DAL не знает DTO. Я пытаюсь сделать это без успеха:

        var func = new Func<Person, bool>(x => x.FirstName.Contains("John"));
        var funcDto = Mapper.Map<Func<Person, bool>, Func<PersonDto, bool>>(func);
        Console.WriteLine(func.ToString());
        Console.WriteLine(funcDto.ToString());

Ошибка, которую я получаю:

----> System.ArgumentException : Type 'System.Func`2[TestAutoMapper.PersonDto,System.Boolean]' does not have a default constructor

У Вас есть какие-то предложения?


person Raffaeu    schedule 09.03.2010    source источник


Ответы (1)


AutoMapper не поддерживает сопоставление с/из выражений или делегатов. Если вы попытаетесь написать это отображение вручную, я думаю, вы поймете, почему :)

person Jimmy Bogard    schedule 09.03.2010
comment
Ага, видел, к сожалению... :-) Все равно спасибо - person Raffaeu; 10.03.2010