XmlSiteMapProvider Sınıf

Tanım

XmlSiteMapProvider sınıfı sınıfından SiteMapProvider türetilir ve ASP.NET için varsayılan site haritası sağlayıcısıdır. sınıfı, XmlSiteMapProvider .sitemap dosya adı uzantısına sahip XML dosyalarından site haritası ağaçları oluşturur.

public ref class XmlSiteMapProvider : System::Web::StaticSiteMapProvider, IDisposable
public class XmlSiteMapProvider : System.Web.StaticSiteMapProvider, IDisposable
type XmlSiteMapProvider = class
    inherit StaticSiteMapProvider
    interface IDisposable
Public Class XmlSiteMapProvider
Inherits StaticSiteMapProvider
Implements IDisposable
Devralma
Uygulamalar

Açıklamalar

sınıfı, XmlSiteMapProvider bilinen şemayı izleyen bir XML dosyasından site eşleme verilerini yükler. Site haritası verileri etiketlerle <siteMap> sınırlanır ve iç içe yerleştirilmiş <siteMapNode> etiketlerden oluşur. site haritası verilerinin SiteMapProvider yapısına ve XmlSiteMapProvider sınıfları tarafından iki kısıtlama uygulanır:

  • Yalnızca bir kök düğüm bulunabilir.

  • URL'leri belirten nesneler için SiteMapNode URL'lerin sağlayıcı kapsamında benzersiz olması gerekir. (URL'leri belirtmeyen düğümler için tüm anahtarların benzersiz olması gerekir.)

Aşağıdaki kod örneği, ile kullanılabilecek bir XML dosyası örneğini XmlSiteMapProvidergösterir.

<siteMap>  
  <siteMapNode title="RootNode" description="This is the root node of the site map. There can be only one root node." url="Page1.aspx" >  
    <siteMapNode title="ChildofRootNode" description="Descriptions do not have to be unique." url="Page2.aspx">  
      <siteMapNode title="ChildOfChildNode" description="SiteMapNode objects can be nested to any level." url="Page3.aspx"/>  
    </siteMapNode>  
    <siteMapNode title="ChildofRootNode" description="Descriptions do not have to be unique." url="Page4.aspx"/>  
  </siteMapNode>  
</siteMap>  

XmlSiteMapProvider ASP.NET için varsayılan sağlayıcıdır ve ASP.NET uygulamasının dizin yapısı içinde bulunan Web.sitemap adlı bir dosyadan XML verilerini okur. Varsayılan olarak, Web.sitemap dosyası uygulama kökünde bulunur; ancak, verilerin yüklendiği XmlSiteMapProvider dosyanın adını veya konumunu değiştirmek isterseniz, Web.config dosyanızdaki varsayılan yapılandırmayı geçersiz kılabilirsiniz. Web.config dosyanızdaki varsayılan yapılandırma ayarlarını geçersiz kılarak, her ASP.NET uygulama için davranışını gerektiği gibi uyarlayabilirsiniz XmlSiteMapProvider .

Aşağıdaki kod örneği, dosyasının hala kullanıldığı ancak farklı bir site haritası dosyasının XmlSiteMapProvider kullanıldığı bir örnek Web.config dosyasını gösterir. Bir SiteMapProviderCollection nesnedeki tüm sağlayıcıların benzersiz olarak adlandırılması gerektiğinden, Web.config dosyasında belirtilen sağlayıcı varsayılandan farklı bir ad kullanır, ancak varsayılan sağlayıcı olarak da ayarlanır, böylece varsayılan ASP.NET yapılandırmasında belirtilen yerine XmlSiteMapProvider kullanılır.

Not

Site gezinti veri dosyasının adını değiştirebilirsiniz, ancak uzantısını değiştiremezsiniz. Yalnızca XmlSiteMapProvider dosya adı uzantısı .sitemap ile adlandırılan dosyalardan verileri okur.

<siteMap defaultProvider="MyXmlSiteMapProvider" enabled="true">  
  <providers>  
    <add name="MyXmlSiteMapProvider"  
      description="SiteMap provider that reads in .sitemap files."  
      type="System.Web.XmlSiteMapProvider, System.Web, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"  
      siteMapFile="CustomWeb.sitemap" />  
  </providers>  
</siteMap>  

Oluşturucular

XmlSiteMapProvider()

Sınıfının yeni, adsız bir örneğini XmlSiteMapProvider oluşturur.

Özellikler

CurrentNode

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

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

Site haritasının kök düğümünü alır.

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)

Geçerli sağlayıcı tarafından tutulan koleksiyonlara bir SiteMapNode nesnesi ekler.

AddNode(SiteMapNode)

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

(Devralındığı yer: SiteMapProvider)
AddProvider(String, SiteMapNode)

Bir alt site haritası sağlayıcısını geçerli sağlayıcıya bağlar.

BuildSiteMap()

Site haritası bilgilerini bir XML dosyasından yükler ve bellekte oluşturur.

Clear()

Alt ve üst site haritası düğümleri ve nesnenin durumunun bir parçası olarak dahili olarak izlediği site haritası sağlayıcıları XmlSiteMapProvider koleksiyonlarındaki tüm öğeleri kaldırır.

Dispose()

Web.sitemap dosyasının dosya izleyicisine nesnenin XmlSiteMapProvider artık dosyanın izlenmesini gerektirmediğini bildirir.

Dispose(Boolean)

Web.sitemap dosyasının dosya izleyicisine nesnenin XmlSiteMapProvider artık dosyanın izlenmesini gerektirmediğini bildirir. yöntemi, Dispose(Boolean) yöntemin kullanıcı kodu tarafından çağrılıp çağrılmadığını belirten bir Boole parametresi alı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 nesneyi 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)

Site haritasının alt düğümlerini döndürür.

GetChildNodes(SiteMapNode)

Belirli SiteMapNode bir nesnenin alt site eşleme düğümlerini alır.

(Devralındığı yer: StaticSiteMapProvider)
GetCurrentNodeAndHintAncestorNodes(Int32)

Şu anda istenen sayfanın düğümünü alırken ve geçerli sayfa için üst ve üst site eşleme 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 geçerli düğüme yakın 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)
GetHashCode()

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

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

Site haritasının üst düğümünü döndürür.

GetParentNode(SiteMapNode)

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

(Devralındığı yer: StaticSiteMapProvider)
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()

Geçerli site haritası veri yapısının en üst düzey düğümünü alır.

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 en iyi duruma getirilmiş 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)

XmlSiteMapProvider Nesnesini başlatır. Initialize(String, NameValueCollection) yöntemi aslında bir site haritası oluşturmaz, yalnızca öğesinin XmlSiteMapProvider durumunu hazırlar.

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 sağlayıcı tarafından izlenen tüm düğüm koleksiyonlarından kaldırır.

RemoveProvider(String)

Bağlı bir alt site haritası sağlayıcısını geçerli sağlayıcının hiyerarşisinden 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.