StaticSiteMapProvider Sınıf

Tanım

Soyut SiteMapProvider sınıfın kısmi bir uygulaması olarak hizmet eder ve ASP.NET'de varsayılan site haritası sağlayıcısı olan sınıf için XmlSiteMapProvider temel sınıf görevi görür.

public ref class StaticSiteMapProvider abstract : System::Web::SiteMapProvider
public abstract class StaticSiteMapProvider : System.Web.SiteMapProvider
type StaticSiteMapProvider = class
    inherit SiteMapProvider
Public MustInherit Class StaticSiteMapProvider
Inherits SiteMapProvider
Devralma
StaticSiteMapProvider
Türetilmiş

Örnekler

Aşağıdaki kod örneği, bir site haritası sağlayıcısı olarak Microsoft Access'i kullanmak için sınıfını StaticSiteMapProvider nasıl genişletirsiniz gösterir. AccessSiteMapProvider sınıfı, yalnızca basit, tek düzeyli derin hiyerarşiyi destekleyen bir site haritası sağlayıcısıdır. Site haritası verilerinin depolandığı tablo aşağıdaki yapıya sahiptir:

NODEID URL            NAME       PARENTNODEID  
 ---------------------------------------------  
 1      default.aspx   Default    <NULL>  
 2      catalog.aspx   Catalog    1  
 3      aboutus.aspx   Contact Us 1  
...  

AccessSiteMapProvider sınıfı sınıfından StaticSiteMapProvider türetilir ve temel SQL sorgularını ve ve OleDbDataReader nesnelerini kullanarak bir Microsoft Access veritabanından OleDbCommand bilgilerini alır.

#using <System.Data.dll>
#using <System.Transactions.dll>
#using <System.EnterpriseServices.dll>
#using <System.dll>
#using <System.Web.dll>
#using <System.Configuration.dll>

using namespace System;
using namespace System::Collections;
using namespace System::Collections::Specialized;
using namespace System::Configuration;
using namespace System::Data;
using namespace System::Data::OleDb;
using namespace System::Security::Permissions;
using namespace System::Web;

/// An extremely simple AccessSiteMapProvider that only supports a
/// site map node hierarchy 1 level deep.

[AspNetHostingPermission(SecurityAction::Demand,Level=AspNetHostingPermissionLevel::Minimal)]
public ref class AccessSiteMapProvider: public StaticSiteMapProvider
{
private:
   SiteMapNode ^ rootNode;
   OleDbConnection^ accessConnection;

   // This string is case sensitive.
   String^ AccessConnectionStringName;

public:
   // Implement a default constructor.
   AccessSiteMapProvider()
   {
      initialized = false;
      AccessConnectionStringName = "accessSiteMapConnectionString";
   }


private:

   // Some basic state to help track the initialization state of the provider.
   bool initialized;

public:

   property bool IsInitialized 
   {
      virtual bool get()
      {
         return initialized;
      }

   }

   property SiteMapNode ^ RootNode 
   {

      // Return the root node of the current site map.
      virtual SiteMapNode ^ get() override
      {
         SiteMapNode ^ temp = nullptr;
         temp = BuildSiteMap();
         return temp;
      }

   }

protected:

   virtual SiteMapNode ^ GetRootNodeCore() override
   {
      return RootNode;
   }


public:

   // Initialize is used to initialize the properties and any state that the
   // AccessProvider holds, but is not used to build the site map.
   // The site map is built when the BuildSiteMap method is called.
   virtual void Initialize( String^ name, NameValueCollection^ attributes ) override
   {
      if ( IsInitialized )
            return;

      StaticSiteMapProvider::Initialize( name, attributes );
      
      // Create and test the connection to the Microsoft Access database.
      // Retrieve the Value of the Access connection string from the
      // attributes NameValueCollection.
      String^ connectionString = attributes[ AccessConnectionStringName ];
      if ( nullptr == connectionString || connectionString->Length == 0 )
            throw gcnew Exception( "The connection string was not found." );
      else
            accessConnection = gcnew OleDbConnection( connectionString );

      initialized = true;
   }


protected:

   ///
   /// SiteMapProvider and StaticSiteMapProvider methods that this derived class must override.
   ///
   // Clean up any collections or other state that an instance of this may hold.
   virtual void Clear() override
   {
      System::Threading::Monitor::Enter( this );
      try
      {
         rootNode = nullptr;
         StaticSiteMapProvider::Clear();
      }
      finally
      {
         System::Threading::Monitor::Exit( this );
      }

   }


public:

   // Build an in-memory representation from persistent
   // storage, and return the root node of the site map.
   virtual SiteMapNode ^ BuildSiteMap() override
   {
      // Since the SiteMap class is static, make sure that it is
      // not modified while the site map is built.
      System::Threading::Monitor::Enter( this );
      try
      {
         
         // If there is no initialization, this method is being
         // called out of order.
         if (  !IsInitialized )
         {
            throw gcnew Exception( "BuildSiteMap called incorrectly." );
         }
         
         // If there is no root node, then there is no site map.
         if ( nullptr == rootNode )
         {
            
            // Start with a clean slate
            Clear();
            
            // Select the root node of the site map from Microsoft Access.
            int rootNodeId = -1;
            if ( accessConnection->State == ConnectionState::Closed )
               accessConnection->Open();
            
            OleDbCommand^ rootNodeCommand = gcnew OleDbCommand
               ("SELECT nodeid, url, name FROM SiteMap WHERE parentnodeid IS NULL", accessConnection);
            OleDbDataReader^ rootNodeReader = rootNodeCommand->ExecuteReader();
            if ( rootNodeReader->HasRows )
            {
               rootNodeReader->Read();
               rootNodeId = rootNodeReader->GetInt32( 0 );
               
               // Create a SiteMapNode that references the current StaticSiteMapProvider.
               rootNode = gcnew SiteMapNode(this, rootNodeId.ToString(), 
                  rootNodeReader->GetString( 1 ),rootNodeReader->GetString( 2 ));
            }
            else
               return nullptr;
            rootNodeReader->Close();
            
            // Select the child nodes of the root node.
            OleDbCommand^ childNodesCommand = gcnew OleDbCommand
               ("SELECT nodeid, url, name FROM SiteMap WHERE parentnodeid = ?", accessConnection);
            OleDbParameter^ rootParam = gcnew OleDbParameter( "parentid", OleDbType::Integer);
            rootParam->Value = rootNodeId;
            childNodesCommand->Parameters->Add( rootParam );
            OleDbDataReader^ childNodesReader = childNodesCommand->ExecuteReader();
            if ( childNodesReader->HasRows )
            {
               SiteMapNode ^ childNode = nullptr;
               while ( childNodesReader->Read() )
               {
                  childNode = gcnew SiteMapNode( this, 
                      System::Convert::ToString(childNodesReader->GetInt32( 0 )),
                     childNodesReader->GetString( 1 ),
                     childNodesReader->GetString( 2 ) 
                  );
                  // Use the SiteMapNode AddNode method to add
                  // the SiteMapNode to the ChildNodes collection.
                  AddNode( childNode, rootNode );
               }
            }
            childNodesReader->Close();
            accessConnection->Close();
         }
         return rootNode;
      }
      finally
      {
         System::Threading::Monitor::Exit( this );
      }

   }

};
namespace Samples.AspNet.CS.Controls {

    using System;
    using System.Collections;
    using System.Collections.Specialized;
    using System.Data;
    using System.Data.OleDb;
    using System.Security.Permissions;
    using System.Web;

    /// An extremely simple AccessSiteMapProvider that only supports a
    /// site map node hierarchy 1 level deep.
    [AspNetHostingPermission(SecurityAction.Demand, Level=AspNetHostingPermissionLevel.Minimal)]
    public class AccessSiteMapProvider : StaticSiteMapProvider
    {
        private SiteMapNode rootNode =  null;
        private OleDbConnection accessConnection = null;

        // This string is case sensitive.
        private string AccessConnectionStringName = "accessSiteMapConnectionString";

        // Implement a default constructor.
        public AccessSiteMapProvider () { }

        // Some basic state to help track the initialization state of the provider.
        private bool initialized = false;
        public virtual bool IsInitialized {
            get {
                return initialized;
            }
        }
        // Return the root node of the current site map.
        public override SiteMapNode RootNode {
            get {
                SiteMapNode temp = null;
                temp = BuildSiteMap();
                return temp;
            }
        }
        protected override SiteMapNode GetRootNodeCore() {
            return RootNode;
        }
        // Initialize is used to initialize the properties and any state that the
        // AccessProvider holds, but is not used to build the site map.
        // The site map is built when the BuildSiteMap method is called.
        public override void Initialize(string name, NameValueCollection attributes) {
            if (IsInitialized)
                return;

            base.Initialize(name, attributes);

            // Create and test the connection to the Microsoft Access database.

            // Retrieve the Value of the Access connection string from the
            // attributes NameValueCollection.
            string connectionString = attributes[AccessConnectionStringName];

            if (null == connectionString || connectionString.Length == 0)
                throw new Exception ("The connection string was not found.");
            else
                accessConnection = new OleDbConnection(connectionString);

            initialized = true;
        }

        ///
        /// SiteMapProvider and StaticSiteMapProvider methods that this derived class must override.
        ///
        // Clean up any collections or other state that an instance of this may hold.
        protected override void Clear() {
            lock (this) {
                rootNode = null;
                base.Clear();
            }
        }

        // Build an in-memory representation from persistent
        // storage, and return the root node of the site map.
        public override SiteMapNode BuildSiteMap() {

            // Since the SiteMap class is static, make sure that it is
            // not modified while the site map is built.
            lock(this) {

                // If there is no initialization, this method is being
                // called out of order.
                if (! IsInitialized) {
                    throw new Exception("BuildSiteMap called incorrectly.");
                }

                // If there is no root node, then there is no site map.
                if (null == rootNode) {
                    // Start with a clean slate
                    Clear();

                    // Select the root node of the site map from Microsoft Access.
                    int rootNodeId = -1;

                    if (accessConnection.State == ConnectionState.Closed)
                        accessConnection.Open();
                    OleDbCommand rootNodeCommand =
                        new OleDbCommand("SELECT nodeid, url, name FROM SiteMap WHERE parentnodeid IS NULL",
                                         accessConnection);
                    OleDbDataReader rootNodeReader = rootNodeCommand.ExecuteReader();

                    if(rootNodeReader.HasRows) {
                        rootNodeReader.Read();
                        rootNodeId = rootNodeReader.GetInt32(0);
                        // Create a SiteMapNode that references the current StaticSiteMapProvider.
                        rootNode   = new SiteMapNode(this,
                                                     rootNodeId.ToString(),
                                                     rootNodeReader.GetString(1),
                                                     rootNodeReader.GetString(2));
                    }
                    else
                    {
                        return null;
                    }

                    rootNodeReader.Close();
                    // Select the child nodes of the root node.
                    OleDbCommand childNodesCommand =
                        new OleDbCommand("SELECT nodeid, url, name FROM SiteMap WHERE parentnodeid = ?",
                                         accessConnection);
                    OleDbParameter rootParam = new OleDbParameter("parentid", OleDbType.Integer);
                    rootParam.Value = rootNodeId;
                    childNodesCommand.Parameters.Add(rootParam);

                    OleDbDataReader childNodesReader = childNodesCommand.ExecuteReader();

                    if (childNodesReader.HasRows) {

                        SiteMapNode childNode = null;
                        while(childNodesReader.Read()) {
                            childNode =  new SiteMapNode(this,
                                                         childNodesReader.GetInt32(0).ToString(),
                                                         childNodesReader.GetString(1),
                                                         childNodesReader.GetString(2));

                            // Use the SiteMapNode AddNode method to add
                            // the SiteMapNode to the ChildNodes collection.
                            AddNode(childNode, rootNode);
                        }
                    }

                    childNodesReader.Close();
                    accessConnection.Close();
                }
                return rootNode;
            }
        }
    }
}
Imports System.Collections
Imports System.Collections.Specialized
Imports System.Data
Imports System.Data.OleDb
Imports System.Security.Permissions
Imports System.Web

Namespace Samples.AspNet.VB.Controls
 
    ' An extremely simple AccessSiteMapProvider that only supports a
    ' site map node hierarchy one level deep.
    <AspNetHostingPermission(SecurityAction.Demand, Level:=AspNetHostingPermissionLevel.Minimal)> _
    Public Class AccessSiteMapProvider
        Inherits StaticSiteMapProvider

        Private aRootNode As SiteMapNode = Nothing
        Private accessConnection As OleDbConnection = Nothing

        ' This string is case sensitive.
        Private AccessConnectionStringName As String = "accessSiteMapConnectionString"

        ' Implement a default constructor.
        Public Sub New()
        End Sub

        ' Some basic state to help track the initialization state of the provider.
        Private initialized As Boolean = False

        Public Overridable ReadOnly Property IsInitialized() As Boolean
            Get
                Return initialized
            End Get
        End Property

        ' Return the root node of the current site map.
        Public Overrides ReadOnly Property RootNode() As SiteMapNode
            Get
                Return BuildSiteMap()
            End Get
        End Property

        Protected Overrides Function GetRootNodeCore() As SiteMapNode
            Return RootNode
        End Function

        ' Initialize is used to initialize the properties and any state that the
        ' AccessProvider holds, but is not used to build the site map.
        ' The site map is built when the BuildSiteMap method is called.
        Public Overrides Sub Initialize(ByVal name As String, ByVal attributes As NameValueCollection)
            If IsInitialized Then
                Return
            End If
            MyBase.Initialize(name, attributes)

            ' Create and test the connection to the Microsoft Access database.
            ' Retrieve the Value of the Access connection string from the
            ' attributes NameValueCollection.
            Dim connectionString As String = attributes(AccessConnectionStringName)

            If Nothing = connectionString OrElse connectionString.Length = 0 Then
                Throw New Exception("The connection string was not found.")
            Else
                accessConnection = New OleDbConnection(connectionString)
            End If
            initialized = True
        End Sub

        ' SiteMapProvider and StaticSiteMapProvider methods that this derived class must override.
        '
        ' Clean up any collections or other state that an instance of this may hold.
        Protected Overrides Sub Clear()
            SyncLock Me
                aRootNode = Nothing
                MyBase.Clear()
            End SyncLock
        End Sub

        ' Build an in-memory representation from persistent
        ' storage, and return the root node of the site map.
        Public Overrides Function BuildSiteMap() As SiteMapNode

            ' Since the SiteMap class is static, make sure that it is
            ' not modified while the site map is built.
            SyncLock Me

                ' If there is no initialization, this method is being
                ' called out of order.
                If Not IsInitialized Then
                    Throw New Exception("BuildSiteMap called incorrectly.")
                End If

                ' If there is no root node, then there is no site map.
                If aRootNode Is Nothing Then
                    ' Start with a clean slate
                    Clear()

                    ' Select the root node of the site map from Microsoft Access.
                    Dim rootNodeId As Integer = -1

                    If accessConnection.State = ConnectionState.Closed Then
                        accessConnection.Open()
                    End If
                    Dim rootNodeCommand As New OleDbCommand("SELECT nodeid, url, name FROM SiteMap WHERE parentnodeid IS NULL", accessConnection)
                    Dim rootNodeReader As OleDbDataReader = rootNodeCommand.ExecuteReader()

                    If rootNodeReader.HasRows Then
                        rootNodeReader.Read()
                        rootNodeId = rootNodeReader.GetInt32(0)
                        ' Create a SiteMapNode that references the current StaticSiteMapProvider.
                        aRootNode = New SiteMapNode(Me, rootNodeId.ToString(), rootNodeReader.GetString(1), rootNodeReader.GetString(2))
                    Else
                        Return Nothing
                    End If
                    rootNodeReader.Close()
                    ' Select the child nodes of the root node.
                    Dim childNodesCommand As New OleDbCommand("SELECT nodeid, url, name FROM SiteMap WHERE parentnodeid = ?", accessConnection)
                    Dim rootParam As New OleDbParameter("parentid", OleDbType.Integer)
                    rootParam.Value = rootNodeId
                    childNodesCommand.Parameters.Add(rootParam)

                    Dim childNodesReader As OleDbDataReader = childNodesCommand.ExecuteReader()

                    If childNodesReader.HasRows Then

                        Dim childNode As SiteMapNode = Nothing
                        While childNodesReader.Read()
                            childNode = New SiteMapNode(Me, _
                            childNodesReader.GetInt32(0).ToString(), _
                            childNodesReader.GetString(1), _
                            childNodesReader.GetString(2))

                            ' Use the SiteMapNode AddNode method to add
                            ' the SiteMapNode to the ChildNodes collection.
                            AddNode(childNode, aRootNode)
                        End While
                    End If

                    childNodesReader.Close()
                    accessConnection.Close()
                End If
                Return aRootNode
            End SyncLock

        End Function 'BuildSiteMap

    End Class

End Namespace

Son olarak, AccessSiteMapProvider aşağıdaki Web.config dosyasında varsayılan sağlayıcı olarak yapılandırılır.

<configuration>  
  <system.web>  
    <siteMap defaultProvider="AccessSiteMapProvider">  
     <providers>  
       <add   
         name="AccessSiteMapProvider"  
         type="Samples.AspNet.AccessSiteMapProvider,Samples.AspNet "  
         accessSiteMapConnectionString="PROVIDER=MICROSOFT.JET.OLEDB.4.0;DATA SOURCE=sitemap.mdb "/>  
     </providers>   
    </siteMap>  
  </system.web>  
</configuration>  

Açıklamalar

StaticSiteMapProvider sınıfı soyut SiteMapProvider sınıfın kısmi bir uygulamasıdır ve iki ek yöntem sağlar: AddNode ve RemoveNodeile soyut BuildSiteMap ve korumalı Clear yöntemleri.

StaticSiteMapProvider sınıfı, kalıcı depolamada depolanan bir site eşlemesini bellekte depolanan bir site haritasına çeviren bir site haritası sağlayıcısı (örneğin, bir XmlSiteMapProvider) yazmayı destekler. StaticSiteMapProvider sınıfı, nesneleri depolamak ve almak SiteMapNode için temel uygulamalar sağlar.

SiteMapProvider ve StaticSiteMapProvider sınıfları, site haritası sağlayıcısının diğer site haritası sağlayıcılarıyla hiyerarşik bir ilişkisi olabileceği site haritası sağlayıcısı hiyerarşisi kavramını destekler. Bu düzen ve ParentProvider özellikleriyle RootProvider birlikte uygulanır.

StaticSiteMapProvider sınıfı nesnelerini karma tablolarda depolar ve site haritası düğümleriyle SiteMapNode temsil edilen sayfaların özelliğini anahtar olarak dahili olarak kullanırSiteMapNode.Url. (Site haritası düğümü url belirtmezse, otomatik olarak oluşturulan benzersiz bir anahtar kullanılarak izlenir.) Sonuç olarak, aynı URL'ye sahip bir site haritası düğümünde birden çok kez kullanılan site haritası düğümleriniz olamaz. Örneğin, aşağıdaki kod örneğinde gösterilen site haritası düğümünü varsayılan ASP.NET site haritası sağlayıcısı olan sınıfına XmlSiteMapProvider veya sınıftan StaticSiteMapProvider türetilen herhangi bir site haritası sağlayıcısına yükleme girişimi, AboutUs.aspx sayfası birden çok kez kullanıldığından çalışmayacaktır.

<sitemap>  
  <sitemapnode title="Home" description="Home" url="default.aspx" >  
    <sitemapnode title="Catalog" description="Our catalog" url="catalog.aspx"/>  
    <sitemapnode title="About Us" description="All about our company" url="aboutus.aspx"/>  
    <sitemapnode title="Driving Directions" description="Directions to our store" url="aboutus.aspx"/>  
  </sitemapnode>  
</sitemap>  

sınıfını StaticSiteMapProvider genişletiyorsanız, en önemli üç yöntem , Initializeve BuildSiteMap yöntemleridirGetRootNodeCore. Clear ve FindSiteMapNode yöntemleri, çoğu özel site haritası sağlayıcısı uygulaması için yeterli olan varsayılan uygulamalara sahiptir.

Yöntem Initialize , site haritası verilerini yüklemek için gereken tüm kaynaklar dahil olmak üzere türetilmiş site haritası sağlayıcılarını başlatmak için çağrılır, ancak bellekte site haritası düğümünü oluşturmaya çalışır. Türetilmiş sınıfınız site haritası verilerini depolamak için dosyaları kullanıyorsa, herhangi bir dosya başlatma işlemi burada gerçekleştirilebilir. Site haritası düğümü ilişkisel veritabanı gibi başka bir veri deposu türü kullanıyorsa, burada bir bağlantı başlatılabilir. Yapılandırmadaki site haritası sağlayıcı öğesine yerleştirilen dosya adları veya bağlantı dizeleri gibi ek öznitelikler ASP.NET yapılandırma sistemi tarafından işlenir ve parametresiyle attributes yöntemine Initialize geçirilir.

yöntemi, BuildSiteMap sınıfından StaticSiteMapProvider türetilen tüm sınıflar tarafından geçersiz kılınmalıdır ve site haritası düğümünü kalıcı depolamadan yüklemek ve bir iç gösterime dönüştürmek için çağrılır. BuildSiteMap yöntemi, ve XmlSiteMapProvider sınıflarının varsayılan üye uygulamalarının StaticSiteMapProvider çoğunda dahili olarak çağrılır. Kendi site haritası sağlayıcınızı uygularsanız, site haritası veri işleme işleminin bir kez gerçekleştiğinden ve site haritası bilgileri zaten yüklenmişse yönteme yapılan BuildSiteMap sonraki çağrıların hemen döndürdüğünü doğrulayın. yöntemini uyguladığınızda BuildSiteMap , birden çok eşzamanlı sayfa isteği dolaylı olarak site haritası bilgilerini yüklemek için birden çok çağrıya neden olabileceğinden iş parçacığının güvenli olduğundan emin olun. Site haritası altyapısı, kullanıcının rolüne göre site haritası bilgilerinin görüntülenmesini destekler. Tek tek SiteMapNode nesneler tarafından desteklenen özelliğe bağlı Roles olarak, farklı kullanıcılar için farklı bir gezinti yapısı bulunabilir. Sınıfın site haritası düğümü alma üyelerinin StaticSiteMapProvider varsayılan uygulamaları, yöntemini çağırarak güvenlik kırpmasını IsAccessibleToUser otomatik olarak gerçekleştirir.

AddNodeve RemoveNode yöntemleri, Clear site haritası düğümlerini iş parçacığı güvenli bir şekilde izlemek için kullanılan iç koleksiyonları işler.

Uygulayanlara Notlar

sınıfından StaticSiteMapProvider devraldığınızda, aşağıdaki üyeyi geçersiz kılmanız gerekir: BuildSiteMap().

Oluşturucular

StaticSiteMapProvider()

StaticSiteMapProvider sınıfının yeni bir örneğini başlatır.

Özellikler

CurrentNode

SiteMapNode şu anda istenen sayfayı temsil eden nesneyi alır.

(Devralındığı yer: SiteMapProvider)
Description

Yönetim araçlarında veya diğer kullanıcı arabirimlerinde (UI) görüntülenmeye uygun kısa ve kolay bir açıklama alır.

(Devralındığı yer: ProviderBase)
EnableLocalization

Özniteliklerin yerelleştirilmiş değerlerinin SiteMapNode döndürülip döndürülmeyeceğini belirten bir Boole değeri alır veya ayarlar.

(Devralındığı yer: SiteMapProvider)
Name

Yapılandırma sırasında sağlayıcıya başvurmak için kullanılan kolay adı alır.

(Devralındığı yer: ProviderBase)
ParentProvider

Geçerli sağlayıcının üst SiteMapProvider nesnesini alır veya ayarlar.

(Devralındığı yer: SiteMapProvider)
ResourceKey

Öznitelikleri yerelleştirmek SiteMapNode için kullanılan kaynak anahtarını alın veya ayarlar.

(Devralındığı yer: SiteMapProvider)
RootNode

Geçerli sağlayıcının temsil ettiğini site haritası verilerinin kök SiteMapNode nesnesini alır.

(Devralındığı yer: SiteMapProvider)
RootProvider

Geçerli sağlayıcı hiyerarşisindeki kök SiteMapProvider nesneyi alır.

(Devralındığı yer: SiteMapProvider)
SecurityTrimmingEnabled

Bir site haritası sağlayıcısının, bir kullanıcının rolüne göre site haritası düğümlerini filtreleyip filtrelemediğini belirten bir Boole değeri alır.

(Devralındığı yer: SiteMapProvider)

Yöntemler

AddNode(SiteMapNode, SiteMapNode)

Site haritası sağlayıcısı tarafından tutulan koleksiyonlara bir SiteMapNode ekler ve nesneler arasında SiteMapNode bir üst/alt ilişki oluşturur.

AddNode(SiteMapNode)

Site haritası sağlayıcısı tarafından tutulan düğüm koleksiyonuna bir SiteMapNode nesnesi ekler.

(Devralındığı yer: SiteMapProvider)
BuildSiteMap()

Türetilmiş bir sınıfta geçersiz kılındığında, site haritası bilgilerini kalıcı depolama alanından yükler ve bellekte oluşturur.

Clear()

Durumunun bir parçası olarak izleyen alt ve üst site haritası düğümleri koleksiyonlarındaki StaticSiteMapProvider tüm öğeleri kaldırır.

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
FindSiteMapNode(HttpContext)

Belirtilen HttpContext nesneyi kullanarak şu anda istenen sayfayı temsil eden bir SiteMapNode nesnesi alır.

(Devralındığı yer: SiteMapProvider)
FindSiteMapNode(String)

Belirtilen URL'deki sayfayı temsil eden bir SiteMapNode nesneyi alır.

FindSiteMapNodeFromKey(String)

SiteMapNode Belirtilen anahtarı temel alan bir nesneyi alır.

GetChildNodes(SiteMapNode)

Belirli SiteMapNode bir nesnenin alt site haritası düğümlerini alır.

GetCurrentNodeAndHintAncestorNodes(Int32)

şu anda istenen sayfanın düğümünü alırken ve geçerli sayfa için üst ve üst site haritası düğümlerini getirirken site haritası sağlayıcıları için iyileştirilmiş bir arama yöntemi sağlar.

(Devralındığı yer: SiteMapProvider)
GetCurrentNodeAndHintNeighborhoodNodes(Int32, Int32)

şu anda istenen sayfanın düğümünü alırken ve site haritası düğümlerini geçerli düğümün yakınında getirirken site haritası sağlayıcıları için iyileştirilmiş bir arama yöntemi sağlar.

(Devralındığı yer: SiteMapProvider)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetParentNode(SiteMapNode)

Belirli SiteMapNode bir nesnenin üst site haritası düğümünü alır.

GetParentNodeRelativeToCurrentNodeAndHintDownFromParent(Int32, Int32)

şu anda istenen sayfa için bir üst düğüm alınırken ve üst öğe için alt düğümler getirilirken site haritası sağlayıcıları için iyileştirilmiş bir arama yöntemi sağlar.

(Devralındığı yer: SiteMapProvider)
GetParentNodeRelativeToNodeAndHintDownFromParent(SiteMapNode, Int32, Int32)

Belirtilen SiteMapNode nesne için bir üst düğüm alınırken ve alt düğümleri getirilirken site haritası sağlayıcıları için iyileştirilmiş bir arama yöntemi sağlar.

(Devralındığı yer: SiteMapProvider)
GetRootNodeCore()

Türetilmiş bir sınıfta geçersiz kılındığında, geçerli sağlayıcı tarafından yönetilen tüm düğümlerin kök düğümünü alır.

(Devralındığı yer: SiteMapProvider)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
HintAncestorNodes(SiteMapNode, Int32)

Site haritası sağlayıcılarının belirtilen SiteMapNode nesneye göre bir veya daha fazla üst ve üst düğüm düzeyinin iyileştirilmiş bir alımını gerçekleştirmek için geçersiz kabileceği bir yöntem sağlar.

(Devralındığı yer: SiteMapProvider)
HintNeighborhoodNodes(SiteMapNode, Int32, Int32)

Site haritası sağlayıcılarının belirtilen düğümün yakınında bulunan düğümleri iyileştirilmiş bir şekilde almak için geçersiz kabileceği bir yöntem sağlar.

(Devralındığı yer: SiteMapProvider)
Initialize(String, NameValueCollection)

SiteMapProvider Kalıcı depolama alanından site haritası verilerini yüklemek için gereken tüm kaynaklar dahil olmak üzere uygulamayı başlatır.

(Devralındığı yer: SiteMapProvider)
IsAccessibleToUser(HttpContext, SiteMapNode)

Belirtilen nesnenin kullanıcı tarafından belirtilen SiteMapNode bağlamda görüntülenip görüntülenemeyeceğini belirten bir Boole değeri alır.

(Devralındığı yer: SiteMapProvider)
MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
RemoveNode(SiteMapNode)

Belirtilen SiteMapNode nesneyi, site haritası sağlayıcısı tarafından izlenen tüm site haritası düğümü koleksiyonlarından kaldırır.

ResolveSiteMapNode(HttpContext)

Olayı tetikler SiteMapResolve .

(Devralındığı yer: SiteMapProvider)
ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)

Ekinlikler

SiteMapResolve

özelliği çağrıldığında CurrentNode gerçekleşir.

(Devralındığı yer: SiteMapProvider)

Şunlara uygulanır

Ayrıca bkz.