2011-07-29 4 views
1

전반적인 문제는 사용자 권한이나 특정 동작을 기반으로 표시되거나 숨겨지는 많은 숨겨진 컨트롤이있는 웹 응용 프로그램이 있다는 것입니다 메인 페이지. 너무 많은 숨겨진 컨트롤과 결과로 렌더링 된 HTML의 깎아 지른 크기와 함께 이러한 컨트롤의 데이터 바인딩 각각의 조합이 있기 때문에 페이지로드가 너무 느립니다. 물론 컨트롤의 표시에서만 데이터 바인딩을 수행 할 수 있지만 문제의 절반 만 처리 할 수 ​​있습니다. 우리는 동적으로 사용자 정의 컨트롤을로드함으로써이 두 가지 문제를 해결하려고 시도하고 있습니다. 우리 모두가 알고 있듯이이 접근법의 문제점은 컨트롤을 동적으로로드 할 때 모든 후속 요청에서 컨트롤을 페이지에 다시 추가해야한다는 것입니다. 따라서 언제든지 OnClick 이벤트와 같은 동작을 발생시키는 동적 하위 컨트롤에서 드롭 다운이라고 말하면 자식 컨트롤을 다시로드해야합니다. 자식 컨트롤 자체는 나쁘지 않지만 페이지의 모든 컨트롤을 리 바인드해야합니다. 데이터 바인딩 된 컨트롤은 모두 비어 있습니다. 그렇다면 어쨌든 자식 컨트롤의 모든로드로 모든 컨트롤을 리 바인드해야하는 번거 로움이 없습니까? 텍스트 박스와 같은 단순한 것들에 대해서는 viewstate를 저장할 수 있고 텍스트는 요청 사이에서 유지되고 컨트롤을 다시로드하지만, 자식 컨트롤에는 바인딩 된 후 수백 행의 데이터가있는 표가 있다고합니다. 자식 컨트롤을 다시로드 할 때? 필요한 경우 작은 예제를 게시 할 수 있습니다.ASP.Net을 사용하여 데이터 컨트롤을 다시 바인딩하는 것을 피하는 방법 사용자 컨트롤을 동적으로로드

답변

0

업데이트 패널을 사용하면 전체 페이지 나 컨트롤이 아닌 업데이트 된 데이터 만 서버로 호출 할 것이라고 생각합니다.

관련 문제