データベースにテーブルがあり、このデータベースを使用してプロジェクトにメニューを作成する必要があります。
asp.net c#でこれを作成するにはどうすればよいですか? メニュースタイルのツリービューで、この行「N:\A\B\C」を変換する必要があります。ただし、この表では、パスにさまざまなレベルのフォルダーが含まれている可能性があるため、このメニューは動的である必要があります。テーブルの行ごとに 1 つの Main Menu があり、各サブフォルダーに 1 つの MenuChild があります。
例: 「N:\A」はメイン メニューで、「B\」は第 2 レベル (サブメニュー) に展開され、「C\」はメニューの第 3 レベルに展開されます。
I このメニューの最初のレベルを作成します。これは、テーブル内の各行のフル パスを示しています。
private DataTable GetMenuData()
{
string selectCommand = "SELECT distinct folder_path FROM A";
string conString = ConfigurationManager.ConnectionStrings["A"].ConnectionString;
SqlDataAdapter dad = new SqlDataAdapter(selectCommand, conString);
DataTable dtblCategories = new DataTable();
dad.Fill(dtblCategories);
return dtblCategories;
}
private void AddTopMenuItems(DataTable menuData)
{
DataView view = new DataView(menuData);
foreach (DataRowView row in view)
{
MenuItem newMenuItem = new MenuItem(row["folder_path"].ToString(), row["folder_path"].ToString());
Menu1.Items.Add(newMenuItem);
}
}
<div id="WorkingZone">
<asp:Menu ID="Menu1" Orientation="vertical" StaticMenuItemStyleCssClass="menuItem"
DynamicMenuItemStyle-CssClass="menuItem" runat="server" />
</div>