У меня есть единичный тест - где я делаю AutoMapperConfiguration в настройке. Затем я устанавливаю IMappingEngine как частное свойство в конструкторе в моем классе, где я действительно делаю сопоставление. Ед. Тест терпит неудачу, если я использую это свойство, но использование статического метода от automapper отлично работает. Оба метода отлично работают при запуске реальной программы. Единственное различие, которое я вижу, - это единичные тесты в отдельной сборке. Соответствие CLS включено.Назначение IMappingEngine в конструкторе вызывает исключение отображения при сопоставлении только при запуске из модульного теста
public class AutomapperConfiguration
{
public static void Configure()
{
Mapper.Initialize(cfg =>
{
cfg.AddProfile<AclassMappingProfile>();
});
}
public static void Reset()
{
Mapper.Reset();
}
}
public class AssetModelFactoryTests
{
[SetUp]
public void SetUp()
{
AutomapperConfiguration.Configure();
}
[Test]
public void TestA()
{
var a = new A();
}
}
public class A
{
private IMappingEngine _mappingEngine;
public A()
{
_mappingEngine = Mapper.Engine;
}
public void DoA()
{
Mapper.Map<Destination>(source); //works
_mappingEngine.Map<Destionation>(source); //Throws mapping not supported
}
}
Какое исключение вы получаете от своих тестов, когда они терпят неудачу? –