Zuordnung einer Quellklasse zu mehreren abgeleiteten Klassen mit automapper

Angenommen, ich habe eine Quellklasse:

public class Source
{
    //Several properties that can be mapped to DerivedBase and its subclasses
}

Und einige Zielklassen:

public class DestinationBase
{
     //Several properties
}

public class DestinationDerived1 : DestinationBase
{
     //Several properties
}

public class DestinationDerived2 : DestinationBase
{
     //Several properties
}

Dann möchte ich, dass die abgeleiteten Zielklassen die Automapper-Konfiguration der Basisklasse erben, da ich sie nicht wiederholen muss. Gibt es eine Möglichkeit, dies zu erreichen?

Mapper.CreateMap<Source, DestinationBase>()
    .ForMember(...)
    // Many more specific configurations that should not have to be repeated for the derived classes
    .ForMember(...);

Mapper.CreateMap<Source, DestinationDerived1 >()
    .ForMember(...);
Mapper.CreateMap<Source, DestinationDerived2 >()
    .ForMember(...);

Wenn ich es so schreibe, werden die Basiszuordnungen überhaupt nicht verwendet, und include scheint mir nicht zu helfen.

Edit: Das bekomme ich:

public class Source
{
    public string Test { get; set; }
    public string Test2 { get; set; }
}

public class DestinationBase
{
    public string Test3 { get; set; }
}

public class DestinationDerived1 : DestinationBase
{
    public string Test4 { get; set; }
}

public class DestinationDerived2 : DestinationBase
{
    public string Test5 { get; set; }
}
Mapper.CreateMap<Source, DestinationBase>()
              .ForMember(d => d.Test3, e => e.MapFrom(s => s.Test))
              .Include<Source, DestinationDerived1>()
              .Include<Source, DestinationDerived2>();

        Mapper.CreateMap<Source, DestinationDerived1>()
              .ForMember(d => d.Test4, e => e.MapFrom(s => s.Test2));

        Mapper.CreateMap<Source, DestinationDerived2>()
              .ForMember(d => d.Test5, e => e.MapFrom(s => s.Test2));

AutoMapper.AutoMapperConfigurationException: Nicht zugeordnete Mitglieder wurden gefunden. Überprüfen Sie die folgenden Typen und Mitglieder.

Fügen Sie einen benutzerdefinierten Zuordnungsausdruck hinzu, ignorieren Sie einen benutzerdefinierten Auflöser, oder ändern Sie den Quell- / ZieltypQuelle -> DestinationDerived1 (Zielmitgliedsliste)

Test3

Antworten auf die Frage(1)

Ihre Antwort auf die Frage