2016-07-09 6 views
0
var largeset = 
     from inv in context.Invoices 
     join line in context.InvoiceLines on inv.InvoiceId equals line.InvoiceId 
     into Lines from linejoin in Lines 
     join track in context.Tracks on linejoin.TrackId equals track.TrackId 
     into Tracks 
     select new 
     { 
      Invoice = inv, 
      Line = Lines, 
      Track = Tracks 
     }; 

// Filter by search term 
if (!string.IsNullOrEmpty(SearchTerm)) 
{ 
    largeset = largeset.Where(x => 
      x.Invoice.Customer.LastName.StartsWith(SearchTerm) || 
      x.Invoice.Customer.FirstName.StartsWith(SearchTerm) || 
      x.Track.Where(t => t.Name.Contains(SearchTerm)).Count > 0); 
} 

Die letzte Zeile dieses CodeschnipselLinq Abfrage mit where-Klausel in einer where-Klausel einen Fehler verursacht

x.Track.Where(t => t.Name.Contains(SearchTerm)).Count > 0 

verursacht einen Fehler

Fehler CS0019 Operator '>' kann nicht sein, angewendet auf Operanden des Typs 'Methodengruppe' und 'Int'

Danke im Voraus.

+0

sollte '' x.Track.Where (t => t.Name.Contains (SearchTerm)). Count() '' als Count ist eine Methode nicht Eigenschaft –

+0

Danke Sajjad, dass genagelt es! – superfly71

Antwort

Verwandte Themen