Мой вопрос очень похож на заданный здесь , но я не смог найти решение на основе предоставленных ответов. Должно быть, я что-то упускаю прямо за углом.
У меня есть специальный конвертер, который позволяет мне делать следующее:
cfg.CreateMap<Container<int>, int>().ConvertUsing(new ContainerConverter<Container<int>, int>());
Но int
не единственный аргумент типа, есть краткий способ express:
cfg.CreateMap<Container<T>, T>().ConvertUsing(new ContainerConverter<Container<T>, T>());
Без необходимости:
cfg.CreateMap<Container<int>, int>().ConvertUsing(new ContainerConverter<Container<int>, int>());
cfg.CreateMap<Container<long>, long>().ConvertUsing(new ContainerConverter<Container<long>, long>());
...
Для каждого T
в использовании?
В моей ситуации свойства Container<T>
и T
в свою очередь члены классов A1, A2...
и B1, B2...
. Сопоставление выполняется по телефону
B dest = mapper.Map<A, B>(source);
Заранее спасибо.