Вызов всех гуру AutoMapper!
Я бы хотел по-разному отображать объект A в объект B в зависимости от контекста во время выполнения. В частности, я хотел бы игнорировать определенные свойства в одном случае сопоставления, а все свойства сопоставлять в другом случае.
Что я испытываю, так это то, что Mapper.CreateMap может быть успешно вызван в различных случаях отображения, однако, когда вызывается CreateMap, устанавливается карта для определенной пары типов, которая впоследствии не изменяется при последующих вызовах CreateMap, которые могут описать отображение по-разному.
Я нашел сообщение в блоге, в котором рекомендуется использовать Mapper.Reset (), чтобы обойти эту проблему, однако статическая природа класса Mapper означает, что столкновение и сбой - это только вопрос времени.
Есть ли способ сделать это?
Мне кажется, мне нужно вызывать Mapper.CreateMap один раз для каждого домена приложения, а затем иметь возможность вызывать Mapper.Map с подсказками о том, какие свойства следует включать / исключать.
В данный момент я думаю об изменении исходного кода путем написания нестатического класса отображения, в котором хранится экземпляр конфигурации отображения. Плохая производительность, но потокобезопасен.
Какие у меня варианты. Что можно сделать? Automapper кажется таким многообещающим.