2016-08-28 2 views
-2

Ich versuche, LINQ-Anweisung zu erstellen. mit where-Klausel wie dieseLINQ-Anweisung mit Where-Klausel funktioniert nicht richtig

p.Users = db.UserFSMs 
     .Where(t => t.UserName.Contains(userORFile.Split('_')[2])) 
     .Select(new Models.UsersFSMFinal { Email=t.Email }); 

Aber der Compiler t nicht zu erkennen. Wie kann ich obige Abfrage erstellen, die mit wo funktioniert?

+0

meine Antwort –

+0

nur Syntaxfehler überprüfen. Sie sollten über Lamba-Syntax lesen Sie hier: https://msdn.microsoft.com/en-us/library/bb397687.aspx – sam

Antwort

1
  • Sie haben t=> wieder zu erklären, mit dem .Select(t => new

  • ich die gleiche LINQ-Anweisung geschrieben, aber auf meine Datenbank und die eingefügten Daten aus einer Textbox sein wird. Es funktionierte gut

    var allData = db.Patients 
        .Where(t => t.firstName.Contains(TextBox1.Text)) 
        .Select(t => new 
        { 
          t.firstName, 
          t.lastName 
        }); 
    
+0

Ich bin nicht in die Datenbank einfügen, ich sende Daten zur Ansicht. also kann ich 'var' nicht senden, um zu sehen, brauche ich konkreten Typ. – Alex

+0

@Alex Obwohl dies nicht die beste Antwort ist, ist es technisch korrekt. Lies einfach den Anfang - füge 't =>' in dein 'Select' ein. Dann erhalten Sie eine Laufzeitausnahme, aber das ist eine andere Geschichte. –