Saltar al contenido

Ignorar el mapeo de una propiedad con Automapper

Esta sección fue aprobado por nuestros especialistas así se garantiza la veracidad de nuestra esta reseña.

Solución:

De Jimmy Bogard: CreateMap().ForMember(x => x.Blarg, opt => opt.Ignore());

Está en uno de los comentarios de su blog.

Soy quizás un poco perfeccionista; Realmente no me gusta la sintaxis ForMember(…, x => x.Ignore()). Es una pequeña cosa, pero me importa. Escribí este método de extensión para hacerlo un poco más agradable:

public static IMappingExpression Ignore(
    this IMappingExpression map,
    Expression> selector)

    map.ForMember(selector, config => config.Ignore());
    return map;

Se puede usar así:

Mapper.CreateMap()
        .Ignore(record => record.Field)
        .Ignore(record => record.AnotherField)
        .Ignore(record => record.Etc);

También puede reescribirlo para trabajar con paramspero no me gusta el aspecto de un método con muchas lambdas.

Puedes hacerlo:

conf.CreateMap()
   .ForSourceMember(x => x.SourceProperty, y => y.Ignore());

O, en la última versión de Automapper, simplemente quiere decirle a Automapper que no valide el campo

conf.CreateMap()
   .ForSourceMember(x => x.SourceProperty, y => y.DoNotValidate());

Te mostramos comentarios y calificaciones

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *