2016-10-27 5 views
1

Ich versuche, von IDataReader in Person zu kartieren, aber ich erhalte immer 0 Ergebnisse: https://github.com/AutoMapper/AutoMapper/issues/874AutoMapper Version 5 Mapping IDataReader

Profil:

internal class ImportAddressProfile : Profile 
{ 
    private readonly IContainer _container; 

    public ImportAddressProfile(IContainer container) 
    { 
     _container = container; 

     CreateMap<IDataReader, Person>(); 
     CreateMap<IDataReader, List<Person>>(); 
    } 
} 

public class Person 
{ 
    public string FirstName { get; set; } 
    public int Amount { get; set; } 
} 

Run: ...

var dt = new DataTable(); 
dt.Columns.Add("FirstName", typeof(string)); 
dt.Columns.Add("Amount", typeof(int)); 
dt.Rows.Add("John", 123); 
dt.Rows.Add("Bob", 2); 

IDataReader reader = dt.CreateDataReader(); 
List<Person> People = Mapper.Map<IDataReader, List<Person>>(reader); 

// returns zero results 

Ich habe bereits versucht, nuget Paket hinzuzufügen: https://www.nuget.org/packages/automapper.data

Antwort

1

AutoMapper.Data wird in AutoMapper 5 nicht unterstützt. Ich habe das in einem eigenen Repository ausgebrochen, hauptsächlich weil ich es nicht verwende und keine Ahnung davon habe, was der Code macht. Wenn Sie daran interessiert sind, funktioniert es, ich bin glücklich, eine PR von jedem, der es mit AutoMapper 5 funktioniert zu akzeptieren.

+0

Haben Sie diese Funktion Autoadapter 6 hinzugefügt. Können Sie bitte erwähnen Beispiel für IDATAREADER Mapping mit Version 6 – cdev

+0

Nein, es ist in ein separates Paket aufgeteilt. –

+0

Wo ich relevante Details finden kann, verwenden wir Autoapper in der Anzahl der Projekte und wir werden mit der neuesten Version fortfahren, unsere Hauptverwendung ist Idatareader. Schätzen Sie, wenn Sie darauf hinweisen können, wie man den Autodatei-Manager mit Autoadapter verwendet. – cdev

Verwandte Themen