私は子供が何であるかを定義する必要があります:
私は次のようなものを書く必要がありますvar parent = categoryID == ParentCategoryID = 0
これが私のASCXコントロールです。
protected void Page_Load(object sender, EventArgs e)
{
categoriesBLL categoriesLogic2 = new categoriesBLL();
rptCategories.DataSource = categoriesLogic2.GetCategories();
rptCategories.DataBind();
}
次のように表示されるクエリの値を表示しています。
<ul class="categories">
<li>Computers</li>
<li>Hardware</li>
<li>Software</li>
</ul>
ご覧のとおり、ハードウェアとソフトウェアはサブカテゴリである必要がありますが、それらは別のLIと同じULブロックに表示されます。
私のデータセットは次のようになります。
ここにサブカテゴリを決定するクエリがあります:
SELECT c1.CategoryID, c2.ParentCategoryID,
c1.Name, c2.Name AS ParentName,
c1.Published, c1.Deleted, c1.PictureID
FROM Nop_Category AS c1 INNER JOIN
Nop_Category AS c2 ON c1.ParentCategoryID = c2.CategoryID
WHERE (c1.Deleted = 0)
AND (c1.Published = 1)
AND (c1.ParentCategoryID = @ParentCategoryID)
しかし、カテゴリの値をデータセットに渡して結果を返すにはどうすればよいですか?次に、新しいulliを作成する必要があります。
<ul class="sub-category">
<li>Hardware</li>
<li>Software</li>
</ul>