Enthält in der LINQ-Abfrage, und Überprüfen Sie für Nicht null

Habe ich eine Linq-Abfrage. In dass ich mit eine Liste mit enthält, filtern Sie einige Datensätze. Die Abfrage muss sich für die Werte, die nicht null in der Liste Werte (100 oder 110 oder 120).

Liste Werte

List splitted = {"100", "110", "120"}

Abfrage

model = (from line in db.Bibs
         where line.TNo == "245" 
           && (line.NrmVal.StartsWith(Val) || line.NrmVal.Contains(" " + Val))
         select new MyModel
         {
          Author = (from a in db.Bibs 
          where a.BId == line.Bid
            &&  splitted.Contains(a.TNo) 
            &&  a.NrmVal != null 
          select a.NrmVal).FirstOrDefault()
         }).ToList();

Jede Hilfe bei der Bereitstellung der Lösung wird geschätzt.

Dank

Und was nicht funktioniert?
Werfen timeout-Ausnahme ausgelöst, wenn ich die Abfrage ausführen. Ich denke, ich bin nicht folgende richtige Weg, dies zu tun, überprüfen Sie (.NrmVal != null).
Wir brauchen mehr Informationen. Ist das von LINQ to SQL? Was sind die Komponenten von db.Lätzchen? Ihre null-check und den id-check nicht notwendig erscheinen, aber ich fühle mich wie wir die fehlenden Informationen hier.
Code sieht in Ordnung für mich? TimeoutException scheint mehr im Zusammenhang mit der Netzwerk-Latenz eher als Ihre LINQ-Abfrage - vielleicht ist es zu lange dauert?
Es tut mir Leid. Das war eigentlich Unterabfrage. Nun, ich aktualisiert meine Frage. Überprüfen Sie jetzt.

InformationsquelleAutor DonMax | 2013-10-08

Schreibe einen Kommentar