2010-03-16 7 views
9

보기에 대해 기본 선택을 수행하고 있습니다. 불행히도 결과가 느려질 수 있으며 간헐적으로 시간 초과 오류가 발생합니다. 타임 아웃을 늘리려면 어떻게해야합니까?어떻게 Linq2Entities에서 시간 초과를 늘릴 수 있습니까?

.NET 3.5을 사용하여, SQL 서버 2000, Linq2Entities

나는 그것을 빨리 DB 측의 여기에 옵션되지 않도록 쿼리를 수정 매우 기본적인 쿼리 List<MyData> result = db.MyData.Where(x.Attribute == search).ToList();

을 사용하고 있습니다.

정확한 오류 : "시간 초과가 만료되었습니다. 작업이 완료되기 전에 시간이 초과되었거나 서버가 응답하지 않습니다."

업데이트 :이 쿼리를 변경하기를 원합니다.

+0

음, 대신 쿼리를 수정하지 않으시겠습니까? 아마도 색인이 누락되었습니다. –

+1

"DB 측에서 더 빨리 쿼리를 수정하는 것은 옵션이 아닙니다." - 그게 내가이 선을 그 안에 넣었던 이유입니다. 이 경우에는 불가능합니다. –

답변

9

connection string에서 시간 초과를 설정할 수 있습니다.

편집 (신규) : 두 가지 다른 시간 초과 개념이 있습니다. 연결 시간 제한은 연결을 설정할지 여부를 결정하는 데 사용됩니다. 개체 컨텍스트의 CommandTimeout 속성은 명령의 시간 제한을 제어합니다. 따라서이 값을 높은 값으로 설정하면 단기 실행 쿼리에 영향을 미치지 않습니다.

+0

그게 유일한 방법입니까? 나는이 하나의 질의를 위해 그것을 바꿀 뿐이다. 다른 쿼리에서는 매우 빠르며 길게 실행하면 연결 실패를 의미하므로 시간 초과를 더 빨리 수행해야합니다. –

+0

@ Russell Steen : 다른 옵션을 사용하여 답변을 업데이트했습니다. –

+0

@ Russell Steen : 답변을 다시 업데이트했습니다. –

관련 문제