2014-02-25 2 views
1

studentKeys의 문자열 목록을 LINQ to Entities 쿼리에 전달하고 있습니다. 그래서 그 목록에있는 데이터를 반환하고 싶습니다.쿼리의 항목 목록을 찾고

public IQueryable<Students> GetStudentsFromKeys(List<string> studentKeys) 
{ 
    var result = from a in this.Context.Students 
    where // ? 

    return result.ToList(); 
} 

하지만 실제로 이러한 쿼리를 작성해야합니까? 해당 테이블을 쿼리하고 해당 키가 해당 목록의 키 중 하나와 동일한 경우 결과로 반환합니다.

답변

3

당신은 할 수 있습니다 :

var result = from a in this.Context.Students 
      where studentKeys.Contains(a.StudentKey) 
      select a; 

또는 방법 구문을 같이

var query = this.Context.Students 
         .Where(r => studentKeys.Contains(r.StudentKey)); 

이는 것 (StudentKey를 가정하는 것은 비교하려는 필드의 이름입니다)

과 유사한 검색어를 생성합니다.
+0

대/소문자를 구분하지 않는 것이 좋습니다. – Chaitanya

+0

@Chaitanya, 꼭 필요한지 아닌지 확실하지 않다. – Habib

+0

그래, 고마워, 내가 필요한 것 같아. –

관련 문제