SiteMap.Provider Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает объект по умолчанию SiteMapProvider для текущей карты сайта.
public:
static property System::Web::SiteMapProvider ^ Provider { System::Web::SiteMapProvider ^ get(); };
public static System.Web.SiteMapProvider Provider { get; }
static member Provider : System.Web.SiteMapProvider
Public Shared ReadOnly Property Provider As SiteMapProvider
Значение свойства
Поставщик карты сайта по умолчанию для .SiteMap
Исключения
Функция карты сайта не включена.
Поставщик по умолчанию, указанный в конфигурации, не существует.
Эта функция поддерживается только при выполнении в низком доверии или более поздней версии.
Примеры
В следующем примере кода показано, как получить доступ к объекту по умолчанию SiteMapProvider для сайта с помощью статического Provider свойства.
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<SCRIPT runat="server">
private void Page_Load(object sender, System.EventArgs e)
{
// Navigate the SiteMap built by the default SiteMapProvider.
Response.Write(SiteMap.RootNode.ToString() + "<BR>");
Response.Write(SiteMap.RootNode.Url + "<BR>");
Response.Write(SiteMap.RootNode.Title + "<BR>");
foreach (SiteMapNode sitemapnode in SiteMap.RootNode.ChildNodes)
{
// Iterate through the ChildNodes SiteMapNodesCollection
// maintained by the RootNode.
Response.Write(sitemapnode.Url + "<BR>" );
}
IEnumerator providers = SiteMap.Providers.GetEnumerator();
while (providers.MoveNext())
{
Response.Write(providers.Current);
Response.Write(" ");
Response.Write("<BR>");
}
}
</SCRIPT>
<%@ Page Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<SCRIPT runat="server">
Private Sub Page_Load(Sender As Object, E As EventArgs)
' Navigate the SiteMap built by the default SiteMapProvider.
Response.Write(SiteMap.RootNode.ToString() & "<BR>")
Response.Write(SiteMap.RootNode.Url & "<BR>")
Response.Write(SiteMap.RootNode.Title & "<BR>")
Dim sitemapnode As SiteMapNode
For Each sitemapnode In SiteMap.RootNode.ChildNodes
' Iterate through the ChildNodes SiteMapNodesCollection
' maintained by the RootNode.
Response.Write(sitemapnode.Url & "<BR>" )
Next
Dim providers As IDictionaryEnumerator = SiteMap.Providers.GetEnumerator()
While (providers.MoveNext())
Response.Write(providers.Current)
Response.Write(" ")
Response.Write("<BR>")
End While
End Sub ' Page_Load
</SCRIPT>
Комментарии
По умолчанию используется объект, XmlSiteMapProvider а данные навигации сайта загружаются из файла Web.sitemap, расположенного в корневом каталоге сайта. Это определяется в классах управления, которые управляют конфигурацией навигации сайта и разделом конфигурации карты сайта в файлах Web.config. По умолчанию это экземпляр класса, который использует файл Web.sitemap в качестве постоянного XmlSiteMapProvider хранилища. Однако вы можете реализовать собственное хранилище карты сайта и схему конфигурации, написав класс, реализующий абстрактный SiteMapProvider класс. Дополнительные сведения о написании собственного поставщика см. в статье SiteMapProvider.