SORU
5 HAZİRAN 2009, Cuma


&Quot;boşver"?AutoMapper:

Bir şekilde açıkça eşlenen olanlar hariç tüm özellikler görmezden AutoMapper söyleyecek var mı?

Ben dış DTO sınıflar vardır muhtemelen bir değişiklik yok ve ben önlemek istiyorsanız belirten her özellik göz ardı etmek, açıkça, bu yana ekleyerek yeni özellikler iradesini kırmak işlevselliği (neden istisnalar) zaman çalışıyor göster onlara kendim nesneler.

CEVAP
24 HAZİRAN 2011, Cuma


Can Gencer herhangi bir mevcut haritalar üzerine uzatma güncelledik.

public static IMappingExpression<TSource, TDestination> 
    IgnoreAllNonExisting<TSource, TDestination>(this IMappingExpression<TSource, TDestination> expression)
{
    var sourceType = typeof (TSource);
    var destinationType = typeof (TDestination);
    var existingMaps = Mapper.GetAllTypeMaps().First(x => x.SourceType.Equals(sourceType) && x.DestinationType.Equals(destinationType));
    foreach (var property in existingMaps.GetUnmappedPropertyNames())
    {
        expression.ForMember(property, opt => opt.Ignore());
    }
    return expression;
}

Kullanımı:

Mapper.CreateMap<SourceType, DestinationType>()
                .ForMember(prop => x.Property, opt => opt.MapFrom(src => src.OtherProperty))
                .IgnoreAllNonExisting();

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • boniver

    boniver

    17 NİSAN 2006
  • Chaîne de TheMoustic

    Chaîne de T

    5 Kasım 2006
  • thewinekone

    thewinekone

    17 Aralık 2005