Automapper: Auto collection de cartes de la propriété pour un objet dto

J'ai un objet de domaine

public class ProductModel
{
    public long Id {get;set;}
    public string Name {get;set;}
    public string SerialNumber {get;set;}
}

Unique Dto classe:

public class ProductDto
{
    public long Id {get;set;}
    public string Name {get;set;}
    public string SerialNumber {get;set;}
}

Unique Dto classe qui est une liste de Dto objet:

public class ProductListDto : List<ProductDto>
{
    public List<ProductDto> Products;

    public ProductListDto()
    {
        Products = new List<ProductDto>();
    }
}

Et j'aimerais carte une liste d'objets de domaine à la liste des Dto des objets tels que les "Produits" de la propriété de ProductListDto objet est AUTOMATIQUEMENT mappé avec une liste de ProductModel objets:

ProductListDto dto = new ProductListDto();  

Mapper.CreateMap<ProductModel, ProductDto>();

/* dto = (ProductListDto) Mapper.Map<List<ProductModel>, List<ProductDto>>((List<ProductModel>)model);  this code line causes error. It is commented out. */ 

dto.Products = Mapper.Map<List<ProductModel>, List<ProductDto>>((List<ProductModel>)model);  //(*)  works OK but need to specify "Products" property

La ligne de code (*) fonctionne bien, mais j'aimerais savoir si il y a une autre façon de AUTOMATIQUEMENT (implicitement) de la carte que les "Produits" de la propriété de dto objet autre que la ligne de code (*)?

Cela signifie que je n'ai pas à écrire du code de la gauche de la ligne de code (*).

Demandez-vous si vous pouvez faire quelque chose comme dto = Mapper.Map(...)?
Oui, Mightymuke. J'ai essayé, mais j'ai eu d'erreur dans le code comme dto = (ProductListDto) Mappeur.Map<Liste<ProductModel>,<ProductDto>>((List<ProductModel>)le modèle);

OriginalL'auteur user1219702 | 2012-11-20