.net Mapper Example

3 min read Jun 04, 2024
.net Mapper Example

Mapper .NET : Un exemple pratique

Le mapper .NET est un outil précieux pour les développeurs .NET qui cherchent à simplifier la conversion de données entre différents formats et systèmes. Il permet de transformer des objets d'une classe en objets d'une autre classe, tout en respectant les règles de mapping définies.

Un scénario simple : Conversion d'un objet "Produit"

Imaginez un scénario où vous avez un objet "Produit" avec les propriétés suivantes :

public class Produit
{
    public int Id { get; set; }
    public string Nom { get; set; }
    public decimal Prix { get; set; }
}

Et vous souhaitez le convertir en un objet "ProduitDTO" (Data Transfer Object) pour l'utiliser dans une API :

public class ProduitDTO
{
    public int ProduitId { get; set; }
    public string NomProduit { get; set; }
    public decimal PrixUnitaire { get; set; }
}

Utilisation d'un mapper .NET pour la conversion

Voici un exemple de code utilisant AutoMapper, un mapper .NET populaire, pour réaliser la conversion :

using AutoMapper;

// Configuration du mapper
var config = new MapperConfiguration(cfg =>
{
    cfg.CreateMap()
        .ForMember(dest => dest.ProduitId, opt => opt.MapFrom(src => src.Id))
        .ForMember(dest => dest.NomProduit, opt => opt.MapFrom(src => src.Nom))
        .ForMember(dest => dest.PrixUnitaire, opt => opt.MapFrom(src => src.Prix));
});
var mapper = config.CreateMapper();

// Création d'un objet "Produit"
var produit = new Produit { Id = 1, Nom = "T-shirt", Prix = 19.99m };

// Conversion en "ProduitDTO"
var produitDTO = mapper.Map(produit);

// Affichage des valeurs du "ProduitDTO"
Console.WriteLine($"ProduitId : {produitDTO.ProduitId}");
Console.WriteLine($"NomProduit : {produitDTO.NomProduit}");
Console.WriteLine($"PrixUnitaire : {produitDTO.PrixUnitaire}");

Dans ce code, le mapper .NET AutoMapper est utilisé pour configurer le mapping entre les deux classes. Les propriétés sont ensuite mappées individuellement en utilisant la méthode ForMember.

Conclusion

Le mapper .NET simplifie la conversion de données en automatisant le processus de transformation. Il vous permet de concentrer votre temps sur la logique métier, plutôt que sur la gestion manuelle des conversions entre différents formats d'objets.

En utilisant un mapper .NET comme AutoMapper, vous gagnez en productivité et améliorez la qualité de votre code .NET.

Related Post