2012-10-11 8 views
0

나는 내 GridViewSQLDataSource으로 묶어 잘 동작하고있다. 이제는 DataTable을 반환하는 메서드 (이 메서드는 dll에서 가져온 메서드이므로 변경할 수 없습니다.)가 DataTableSQLDataSource에 할당해야합니다.DataTable을 SQLDataSource에 할당하는 방법?

은 내가 더 DataSource 속성이 SQLDataSource에 없다 알이

SQLDataSource1.DataSource = MyDataTable; 

처럼 뭔가를 찾고 있어요,하지만 난 기능의 유사한 종류가 필요합니다.

나는 GridView1.DataSource = MyDataTable; 다음 내가 도움이 될 것 등

코드 예제를 업데이트, 정렬처럼의 SqlDataSource의 모든 기능을 느슨하게 설정합니다.

+2

에 대한 자세한 내용을보실 수 있습니다 왜 당신은 전혀의 SqlDataSource에 테이블을 할당해야합니까? GridView의 DataSource로 테이블을 직접 사용할 수 없습니까? –

+0

@Tim Schmelter : 내 질문을 업데이트했습니다. SQLDataSource의 DataSource를 설정할 수 있으면 다른 모든 기능이 준비됩니다. – jams

답변

1

SqlDataSource에서 ObjectDataSource로 변경할 수 있습니다. 그것은 당신이 당신의 메서드를 호출 여전히 페이징 할 수

당신은 ObjectDataSourcean more here

<asp:ObjectDataSource 
    SelectCountMethod="GetXXXMethodCount" //a method that return total number of records 
    EnablePaging="true" 
    TypeName="YourBLLFullClassName" 
    SelectMethod="GetXXXMethod" 
    MaximumRowsParameterName="maxRows" 
    StartRowIndexParameterName="startRows" 
    ID="ObjectDataSource1" 
    runat="server"> 
</asp:ObjectDataSource> 
+0

예, 이것이 옵션이지만 SQLDataSource의 DataSource를 설정할 수 있으면 다른 모든 기능이 준비됩니다. 'SQLDataSource'를 유지하면 좋다. – jams

+0

모든 ObjectDataSource에서 사용할 수있는 중앙 BLL 메서드를 사용할 수 있으므로 ObjectDataSource가 SQLDataSource보다 좋다고 생각합니다.이 메서드는 코드의 다른 부분에서 계속 사용할 수 있습니다. 반면에 SQLDataSource는 이식성이 없으며 해당 페이지에만 유용합니다. – codingbiz

+0

코드 변경없이 SQLDataSource의 모든 기능을 계속 사용할 수 있습니까? – jams

관련 문제