XmlSiteMapProvider Sınıf

Tanım

XmlSiteMapProvider sınıfı SiteMapProvider sınıfından 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ıyla XML dosyalarından site eşleme 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 bir ş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 belirtmeyen düğümler için tüm anahtarların benzersiz olması gerekir.)

Aşağıdaki kod örneğinde, ile kullanılabilecek bir XML dosyası örneği gösterilmektedir XmlSiteMapProvider.

<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ında bulunan Web.sitemap adlı 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 XmlSiteMapProvider davranışını gerektiği gibi uyarlayabilirsiniz.

Aşağıdaki kod örneğinde, XmlSiteMapProvider dosyasının hala kullanıldığı ancak farklı bir site haritası dosyasının kullanıldığı örnek bir Web.config dosyası gösterilmektedir. SiteMapProviderCollection nesnesindeki tüm sağlayıcıların benzersiz olarak adlandırılması gerektiğinden, Web.config dosyasında belirtilen sağlayıcı varsayılan dışında 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 XmlSiteMapProvider yerine kullanılır.

Note

Site gezintisi veri dosyasının adını değiştirebilirsiniz, ancak uzantısını değiştiremezsiniz. Yalnızca XmlSiteMapProvider dosya adı uzantısı .sitemap olan 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

Name Description
XmlSiteMapProvider()

Sınıfının yeni, adlandırılmamış bir örneğini XmlSiteMapProvider oluşturur.

Özellikler

Name Description
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 eşleme düğümlerini filtreleyip filtrelemediğini belirten bir Boole değeri alır.

(Devralındığı yer: SiteMapProvider)

Yöntemler

Name Description
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()

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

Dispose()

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

Dispose(Boolean)

Web.site haritası 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 SiteMapNode nesneyi kullanarak şu anda istenen sayfayı temsil eden bir HttpContext nesne alır.

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

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

FindSiteMapNodeFromKey(String)

SiteMapNode Belirtilen anahtara göre bir nesne 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 site haritası düğümlerini geçerli düğüme yakın bir konuma 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 eşleme 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()

Geçerli örneğin Type 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üğüme yakın bir konumda bulunan düğümleri en iyi duruma getirmek için geçersiz kabileceği bir yöntem sağlar.

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

Nesnesini başlatır XmlSiteMapProvider . Initialize(String, NameValueCollection) yöntemi aslında bir site haritası oluşturmaz, bunu yapmak için yalnızca durumunu XmlSiteMapProvider 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 Objectbasit 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 bir dize döndürür.

(Devralındığı yer: Object)

Ekinlikler

Name Description
SiteMapResolve

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

(Devralındığı yer: SiteMapProvider)

Şunlara uygulanır

Ayrıca bkz.