2010-07-21 7 views
2

db의 조회 테이블 열에서 텍스트 값을 추출하고 싶습니다. EL은 내 데이터베이스 엔티티입니다. 현재 코드 :C# lambda 단일 행 문자열 값을 추출하십시오.

var QTypes = EL.ElogQueryType.Where<ElogQueryType>(eqt=> eqt.ID == queryTypeID);      
string qType = QTypes.First().QueryType; 

.Select(... 뭔가 잘못되었으므로 목록을 가져옵니다.

+0

'OrderBy'가 없으므로'First'를 정말로 원하지 않는다고 가정하고 대신에'Single' 레코드를 선택하기를 원합니다. – Kelsey

답변

3

당신은 할 수 있어야 단 하나의 아이템을 얻는 것을 안다면 그냥하십시오 :

var QTypes = EL.ElogQueryType.Where(eqt=> eqt.ID == queryTypeID).Single().QueryType; 

하나 또는 둘 이상을 얻을지 확실하지 않으면 SingleOrDefault()을 사용하십시오.

당신이 많은 기록을 기대하고 있기 때문에 당신은 단지 첫 번째를 원한다면

가 할 : 당신은 당신이 무엇을 얻을 것이다 경우, FirstOrDefault을 사용 모르는 경우

var QTypes = EL.ElogQueryType.First(eqt=> eqt.ID == queryTypeID).QueryType; 

같은이 적용됩니다.

2

현재 쿼리가 나와있는 것이 무엇인지에 대해 명확하지 않습니다. 그러나, 당신은 또한 술어 소요 First의 과부하 사용할 수 있습니다.

string qType = EL.ElogQueryType.First(eqt => eqt.ID == queryTypeID) 
           .QueryType; 

당신은 당신이 있지만, 당신이 무슨 뜻인지 정말 분명하지 않다 "[당신이] (ALL 기타 사항 서보 -OFF을 끌어 목록을 얻을"말을 당신의 천국 ' t은 이미 지정한 코드 뭐가 잘못 말했다

는 (켈시는 말처럼, 우선하는 대안이 있습니다. FirstOrDefault, SingleOrDefault, Single 심지어 Last이 원하는해야합니다).