2012-02-17 1 views
0

프로젝트 : ASP.NET 3.5 서버독립 페이징 제어

: 프로젝트의 페이지 2008

하나의 SQL 서버는 모든 로그 항목을 나열하는 데 사용됩니다 (등 오류를 포함하여, 정보) . 따라서 엄청난 양의 레코드가 나열 될 것입니다.

어디서나 사용할 수 있도록 '호출기'사용자 정의 컨트롤을 만들고 싶습니다. 호출기에 SelectAllRecords 등의 추가 기능이 많이 있기 때문에 ASP.NET에서 제공하는 호출기를 사용할 수 없습니다. 'LogListPage'의 경우 GetLogInfo() 함수를 호출하여 데이터를 가져옵니다. 'OrderListPage'에 대해 GetOrderInfo() 등을 호출합니다 ...

각 레코드에 대해 모든 레코드를 선택하는 대신 필요한 레코드 수를 효과적으로 선택할 수 있도록 'PageSize'와 'CurrentPage'를 전달합니다.).

제 궁금한 점은, 어떻게 컨트롤을 일반 컨트롤로 만들 수 있습니까? 왜냐하면 각 페이지마다 다른 기능을 호출해야하기 때문입니다. 사용자 정의 컨트롤에 public 속성을 만들어 목록 페이지의 gridview를 참조 할 수 있습니다. 그러나 사용자 컨트롤의 'First', 'Previous', 'Next'또는 'Last'링크를 클릭하면 데이터베이스에 연결하고 레코드를 선택해야합니다. 함수 이름을 사용자 정의 컨트롤에 전달하고 함수를 실행 한 다음 모눈을 바인딩 할 수 있습니까? 모든

답변

0

첫째 : 다음 HERE

에서, 나는 매기기 제어와 데이터베이스 사이의 추상화 레벨을 작성하는 것이 좋습니다 수 있습니다 시작합니다. 모든 페이지에 대해 일반 모드를 정의하면 페이지 매거기를 데이터베이스에 의존하지 않는 데이터 소스에 바인딩 할 수 있습니다.

우리는 로그에 대해 이야기하고 있습니다. 따라서 추상적 인 로그 항목은 그렇게 어렵지 않아야합니다.

자세한 내용은 컨트롤 확장을 고려하십시오. HERE