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

  • iBand IguJoo

    iBand IguJoo

    25 AĞUSTOS 2006
  • Numberphile

    Numberphile

    15 EYLÜL 2011
  • Tek Syndicate

    Tek Syndicat

    23 Temmuz 2008