2012-04-24 2 views
1

약간의 배경 ... 나는 웹 페이지에 6 개의 드롭 다운 목록과 그리드가 포함되어 있습니다. 쿼리를 채우는 쿼리는 매우 간단하며 (최대 4 줄) 7 개의 별도 SqlDataSources에 배치되었습니다.여러 SqlDataSources는 어떻게 작동합니까?

내가 직면하는 문제는 초기 pageload가 너무 오래 걸리며 SqlDataSource 연결이 실제로 어떻게 작동하는지 궁금합니다.

페이지가 모든 소스에 대해 하나의 트랜잭션을 연 다음 마지막에 닫습니까? 아니면 각 SqlDataSource에 대해 별도의 트랜잭션을 열고 닫을 것입니까?

답변

1

데이터베이스에 대해 7 번의 개별 호출을 수행하고 있다고해도 의심치 않습니다. 드롭 다운을 고려할 때 데이터의 작은 집합 만 상상할 수있는 것으로 간주하면 오래 걸리지 않습니다.

도움이 될 수있는 몇 가지 해결책이 있습니다. 당신이

  • 는 데이터 소스에서 SQL을 최적화 쿼리하는 테이블에

    1. 설정 인덱스 (당신은/어떤 펑키 조인 subquerying거야?)
    2. 명시 적으로 (당신이 드롭 다운에 필요한 열을 선택 디스플레이 및 데이터 멤버) 및 그 이상.
  • +0

    제안 해 주셔서 감사합니다. 문제의 원인이되는 쿼리 속도가 아닙니다. 처음에는 데이터베이스에 연결하는 데 시간이 걸리므로 SqlDataSources가 7 개의 개별 연결을 발생시키는 지 궁금합니다. 또는 VS 그들이 같은 장소에 연결되어 있고 모두를위한 하나의 연결 만 열어 준다는 것을 깨닫습니다. –

    관련 문제