2016-11-09 1 views
0

Ich habe diese lesen Service-Methode:Wie ein Read-Dienst ordnungsgemäß in C# verwenden

public IQueryable<Order> GetListQuery() 
{ 
    return this._orderRepository.Table; 
} 

ich diese Methode wie folgt aufrufen:

var config = new MapperConfiguration(cfg => { 
        cfg.CreateMap<Order, ViewModelOrder_Order>(); 
       }); 

List<ViewModelOrder_Order> orderList = this._orderReadService.GetListQuery() 
       .Where(m => m.UserId == user.Id) 
       .ProjectTo<ViewModelOrder_Order>(config) 
       .ToList(); 

Wenn ich diesen Code ausführen, bekomme ich Bestellliste als Null. Wie kann ich diesen Code reparieren? Vielen Dank.

Hier ist meine Klasse Auftrag:

public long Id { get; set; } 

public string UserId { get; set; } 

public string ProductId { get; set; } 

public virtual ApplicationUser User { get; set; } 

public virtual Product Product { get; set; } 
+0

this._orderReadService.GetListQuery ändern() . Wo (m => m.UserId == user.Id) .ToList() hat Ergebnis? Überprüfen ohne Zuordnung –

+0

@ M.Azad, ok lass mich überprüfen – jason

+0

@ M.Azad Es kommt als null. – jason

Antwort

1

wenn Ihr Suchergebnis Wert hat Sie Mapping wie

var config = new MapperConfiguration(cfg => { 
       cfg.CreateMap<Order, ViewModelOrder_Order>(); 
      }); 

und verwenden Sie es wie

List<Order> orderList = this._orderReadService.GetListQuery() 
      .Where(m => m.UserId == user.Id) 
      .ToList(); 
var mapper = config.CreateMapper(); 
var result=mapper .Map<List<ViewModelOrder_Order>>(orderList); 
+0

Ich bekomme diesen Fehler: 'Liste ' enthält keine Definition für 'ProjectTo' und die beste Erweiterung Methode Überladung 'Extensions.ProjectTo > (IQueryable, Objekt, Parameter Expression , Objekt >> []) 'benötigt einen Empfänger vom Typ' IQueryable ' – jason

+0

Ich habe es so geändert: 'List orderList = this._orderReadService.GetListQuery() . Wo (m => m.UserId == user. Id) .ProjectTo > (config) .ToList(); ' Und ich bekomme diese Fehlermeldung: kann nicht implizit konvertiert Typ‚System.Collections.Generic.List > 'zu' System.Collections.Generic. Liste ' – jason

+0

Ihr endgültiger Code gibt immer noch Fehler: Kann den Typ' System.Collections.Generic.List nicht implizit konvertieren 'zu' System.Collections.Generic.List ' – jason

Verwandte Themen