Вложенное сопоставление Automapper

Я читал вики-страницу о вложенном сопоставлении, но, похоже, она не любит многоуровневую вложенность. У меня созданы следующие карты и определены классы.

AutoMapper.Mapper.CreateMap<Address, AddressDTO>();
AutoMapper.Mapper.CreateMap<MatchCompanyRequest, MatchCompanyRequestDTO>();

public class MatchCompanyRequest
{
    Address Address {get;set;}
}

public class MatchCompanyRequestDTO
{
    public CompanyInformationDTO {get;set;}
}

public class CompanyInformationDTO {get;set;}
{
    public string CompanyName {get;set;}
    public AddressDTO Address {get;set;}
}

Но следующий код ...

// works
matchCompanyRequestDTO.companyInformationDTO.Address =
    AutoMapper.Mapper.Map<Address, AddressDTO>(matchCompanyRequest.Address);

// fails
matchCompanyRequestDTO =
    AutoMapper.Mapper
        .Map<MatchCompanyRequest, MatchCompanyRequestDTO>(matchCompanyRequest);

Это глубокое вложение работает, и я неправильно его настроил? Или этот вид вложения еще не поддерживается?

- Edit

Для всех, кому интересно, я не контролирую DTO.

8
задан ryan 7 November 2011 в 18:12
поделиться