문제

양방향 매핑을하고 싶다면 두 개의 매핑을 만들어야합니까?

Mapper.CreateMap<A, B>() and Mapper.CreateMap<B, A>()?

도움이 되었습니까?

해결책

예, 일부 속성의 유형을 변경하면 (예 : DateTime-> String) 양방향이 아닙니다 (AutomPapper에 String-> DateTime을 변환하는 방법을 지시해야합니다).

다른 팁

예,하지만 자주이 작업을 수행한다면 :

public static class AutoMapperExtensions
{
    public static void Bidirectional<TSource, TDestination>(this IMappingExpression<TSource, TDestination> expression)
    {
        Mapper.CreateMap<TDestination, TSource>();
    }
}

그 다음에:

Mapper.CreateMap<A, B>().Bidirectional();

이것은 이제 Automapper에 구워졌습니다

Mapper.CreateMap<SourceType, DestType>().ReverseMap();

좋은 아이디어 에릭! 리턴 값을 추가 했으므로 리버스 매핑도 구성 가능합니다.

public static class AutoMapperExtensions
{
    public static IMappingExpression<TDestination, TSource> Bidirectional<TSource, TDestination>(this IMappingExpression<TSource, TDestination> expression)
    {
        return Mapper.CreateMap<TDestination, TSource>();
    }
}
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top