2012-12-03 3 views
1

SQL 및 asp.net에 익숙하지 않으며 포럼 응용 프로그램을 만들려고합니다. 나는 두 개의 테이블을 만들었습니다.각 범주에 대해 하위 범주 표시

SELECT 
    forum_categories.CategoryName, forum_subcategories.SubCategoryName 
FROM  
    forum_categories 
LEFT JOIN 
    forum_subcategories ON forum_categories.CategoryId = forum_subcategories.CategoryId 

enter image description here

이 쿼리가 반환하는 것입니다 : : 그리고이 쿼리를 사용하여 테이블에서 데이터를 선택하고

enter image description here

지금 내가 필요한 각 범주 I입니다 하위 카테고리를 표시해야합니다. 나는 이것에 대한 ListView를 사용하고 있습니다 :

<asp:ListView ID="ListView1" runat="server" DataSourceID="ForumDataSource"> 
    <ItemTemplate> 
     <div id='<%#Eval("CategoryName") %>' class="PostCategories"> 
      <h2><asp:Label ID="Label1" runat="server" Text='<%#Eval("CategoryName") %>'></asp:Label></h2> 
      <table class="ForumPosts"> 
       <thead> 
        <td>Category</td> 
        <td>Posts</td> 
        <td>Last Post</td> 
       </thead> 
       <tbody> 
        <tr> 
         <td><asp:Label ID="Label2" runat="server" Text='<%#Eval("SubCategoryName") %>'></asp:Label></td> 
        </tr> 
       </tbody> 
      </table> 
     </div>   
    </ItemTemplate> 
    <EmptyDataTemplate> 
     <p>No Data Found</p> 
    </EmptyDataTemplate> 
</asp:ListView> 
<asp:SqlDataSource ID="ForumDataSource" runat="server" 
    ConnectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\ASPNETDB.MDF;Integrated Security=True;User Instance=True" 
    ProviderName="System.Data.SqlClient" 
    SelectCommand="SELECT forum_categories.CategoryName, forum_subcategories.SubCategoryName FROM forum_categories LEFT JOIN forum_subcategories ON forum_subcategories.CategoryId = forum_categories.CategoryId"> 
</asp:SqlDataSource> 

이제 모두가 이미 코드에서 이해 하듯이 8 표를 반환합니다. 각 범주는 단지 3 테이블 나는이 문제에 접근하는 방법을

이 있어야한다이 경우 data.In 하위 범주의 표시에 대한

내가 좀하고 싶습니다입니까?

SQL을 사용하거나 서버 측 언어로 수신 된 데이터를 조작해야합니까?

답변

2

저는 ListView를 좋아하지 않습니다. 하지만 이것을 시도해 볼 수 있습니다.

두 개의 목록보기가 필요합니다. 외부 목록보기 및 내부 목록보기.

바깥 쪽은 범주를 반복하므로 세 개의 테이블 만 제공해야합니다. 별개의 항목 만 선택해야합니다.

그러면 내부 목록보기는 각 CategoryID를 반복하고 CategoryID에 연결된 하위 카테고리를 가져옵니다.

관련 문제