This documentation is archived and is not being maintained.

SiteMapDataSource.SiteMapProvider Property

Gets or sets the name of the site map provider that the data source binds to.

Namespace:  System.Web.UI.WebControls
Assembly:  System.Web (in System.Web.dll)

public virtual string SiteMapProvider { get; set; }
<asp:SiteMapDataSource SiteMapProvider="String" />

Property Value

Type: System.String
The name of the site map provider that the SiteMapDataSource binds to. By default, the value is Empty, and the default site map provider for the site is used.

The value of the SiteMapProvider property is stored in view state.

How to: Localize Site-Map DataBuilding ASP .NET Web Applications
How to: Localize Site-Map DataBuilding ASP .NET Web Applications

The following code example demonstrates how to declaratively bind a TreeView control to site map data that is provided by an SiteMapProvider object other than the default provider. The Web.config file makes a custom SiteMapProvider object available to the SiteMapDataSource control:

      <add name="AsciiTextProvider"
        description="SiteMap provider which reads in .sitemap text files."

The code for the SimpleTextSiteMapProvider class that this Web.config file example references can be found in the SiteMapProvider class overview. If you use the Visual Basic example, the namespace ends in "VB" instead of "CS". You can also find sample content for the "text.txt" site map file in the SiteMapProvider class overview.


The AsciiTextProvider is not the default provider for the site, which (in this case) remains the XmlSiteMapProvider object. The SiteMapProvider property of the SiteMapDataSource control is set to the name of a custom site map provider, and the TreeView binds to the corresponding site map data.

<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "">

<html xmlns="" >
    <head runat="server">
    <title>ASP.NET Example</title>
        <form id="form1" runat="server">
                SiteMapProvider="AsciiTextProvider" />



.NET Framework

Supported in: 4, 3.5, 3.0, 2.0

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.