SiteMapDataSource.SiteMapProvider

SiteMapDataSource.SiteMapProviderに独自のサイトマッププロバイダを設定できる。

SiteMapDataSource.SiteMapProvider プロパティ (System.Web.UI.WebControls) | Microsoft Learn
[ASP.NET]サイト内に複数のサイトマップ・ファイルを設置するには?[2.0のみ、C#、VB] - @IT

web1.sitemapを新たに用意し、

こう書く。
(web.sitemapは消してもいい。)
"Top"が"Web1 Top"とかに変更されている。
web.configを用意し、

typeが"System.Web.XmlSiteMapProvider"で、siteMapFileが"web1.sitemap"である"TestProvider"という独自プロバイダを登録。
あとは、Index.aspx.csで、

ロード時にsmd.SiteMapProviderに"TestProvider"をセット。
ボタンを押すと、ボタンのテキストがプロバイダ名に変わる。

"Web1 Top"になってるから、web1.sitemapから情報を読み込んでるのがわかる。
"Web1 Top"になってるから、web1.sitemapから情報を読み込んでるのがわかる。

"Web1 Top"になってるから、web1.sitemapから情報を読み込んでるのがわかる。

ボタン押したらこうなった。
ボタン押したらこうなった。

ボタン押したらこうなった。

Sample/aspnet/SiteMapDataSource/SiteMapProvider/src/SiteMapDataSource at master · bg1bgst333/Sample · GitHub