2012-04-11 8 views
1

So Rückkehr Im eine Sammlung von meinem GET-Anfrage und ich merkte, ich möchte eine Gruppe eher auf anyofthebelow Basis zurückzukehren als individuell:Linq in Wcf-Dienst

StudentID

Vorname

Name VZ

Ich weiß nur, wie es im folgenden Code zu tun, während dann verschiedene GET-Methoden für jeden zu erstellen, gibt es ein Weg, wie ich die GetStudentCollectionByGroup(string anything) anrufen und die obige Liste von Besonderheiten von meinem Kunden zurückgeben könnte, ohne die folgende Methode für jede StudentID, FirstName, LastName zu tun?

public List<Group> GetStudentCollectionByGroup(string studentID) 
    { 
     List<Group> groups = (from g in Groups 
           where 
            (from t in g.Groupsz where t.StudentID == studentID select t).Count() > 0 
           select g).ToList(); 
     return groups; 
    } 

    public List<Group> GetStudentCollectionByGroup(string firstName) 
    { 
     List<Group> groups = (from g in Groups 
           where 
            (from t in g.Groupsz where t.FirstName == firstName select t).Count() > 0 
           select g).ToList(); 
     return groups; 
    } 

Zum Beispiel:

from t in g.Groupsz where t.StudentID == studentID select t 

Gibt es eine Methode oder? Etwas wie:

where t.StudentID == anything OR t.FirstName == anything etc 

P. S nicht ganz sicher, wie man Wort der Titel für diese (Änderungen erlaubt)

+1

Beobachten Sie die Fallsensitivität in Ihrem Namen Vergleich. BOB! = Bob! = Bob. Sie sollten wahrscheinlich eine Vergleichsmethode verwenden, mit der Sie den Fall wie String.Compare steuern können – user957902

Antwort

3

Natürlich; Sie können den Operator || verwenden:

where t.StudentID == studentID || t.FirstName == firstName