Может ли AutoMapper автоматически разрешать типы на основе существующих карт? - PullRequest
0 голосов
/ 05 мая 2010

У меня есть следующий код:

[SetUp]
public void SetMeUp()
{
     Mapper.CreateMap<SourceObject, DestinationObject>();
}

[Test]
public void Testing()
{
     var source = new SourceObject {Id = 123};
     var destination1 = Mapper.Map<SourceObject, DestinationObject>(source);
     var destination2 = Mapper.Map<ObjectBase, ObjectBase>(source);

     //Works
     Assert.That(destination1.Id == source.Id);

     //Fails, gives the same object back
     Assert.That(destination2 is DestinationObject);
}

public class ObjectBase
{
     public int Id { get; set; }
}

public class SourceObject : ObjectBase { }
public class DestinationObject : ObjectBase { }

Итак, я хочу, чтобы AutoMapper автоматически разрешал тип назначения в «DestinationObject» на основе существующих карт, настроенных в AutoMapper. Есть ли способ добиться этого?

1 Ответ

1 голос
/ 05 мая 2010

Вы можете попробовать следующее сопоставление с последней версией (1.1) :

Mapper.CreateMap<ObjectBase,ObjectBase>()
  .Include<SourceObject, DestinationObject>();

Mapper.CreateMap<SourceObject, DestinationObject>();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...