2010-01-08 24 views
5

Is kurulum için Automapper bir kongre ile mümkündür.Automapper Sözleşmesi

Mapper.CreateMap<Error, ErrorViewModel>(); 

projeksiyon Özel bir harita oluşturmak için ihtiyaç duyacağı gerekli fakat olurdu haritalar oluşturmak için bir kongre yaşıyor anlarım: Ben kurulum için aşağıdaki harita var oldukça olmazdı Örnek olarak

Güzel.

+0

Bir yan not olarak, temel olarak taramayı ekleyerek ileri geri gittik. Hatta (4-500 civarında) haritalama tanımların büyük # ile, sadece bize gerçekten bakmak için bir ağrı yeterli değildi. ValueInjecter http://valueinjecter.codeplex.com/documentation denemek –

+0

, bu – Omu

+0

yazmak için türdeki her kombinasyon için haritalar oluşturulmasını gerektirmez Neden kurulum o olacak? – gdoron

cevap

6

Sen haritaya Mapper.DynamicMap<TDest>(source) kullanmak gerekir. Aşağıdaki örnekte görebileceğiniz gibi

, otomatik olarak bir kaynaktan hedefe eşleşen özelliklerini eşler.

using AutoMapper; 
using System.Diagnostics; 

class Program 
{ 
    static void Main(string[] args) 
    { 
     var source = new Foo {Value = "Abc"}; 
     var destination = Mapper.DynamicMap<FooViewModel>(source); 

     Debug.Assert(source.Value == destination.Value); 
    } 
} 

public class Foo 
{ 
    public string Value { get; set; } 
} 

public class FooViewModel 
{ 
    public string Value { get; set; } 
} 
+1

Teşekkürler, ben görmemişti Mapper.DynamicMap – beckelmw