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

  • Justin Schenck

    Justin Schen

    24 Kasım 2006
  • Project Mooncircle

    Project Moon

    6 Aralık 2009
  • Submissions101

    Submissions1

    23 ŞUBAT 2007