次の方法で共有


SiteMapProvider.GetCurrentNodeAndHintNeighborhoodNodes(Int32, Int32) メソッド

定義

現在要求されているページのノードを検索し、現在のノードの近くのサイト マップ ノードをフェッチする際、サイト マップ プロバイダーに最適化された検索メソッドを提供します。

public:
 virtual System::Web::SiteMapNode ^ GetCurrentNodeAndHintNeighborhoodNodes(int upLevel, int downLevel);
public virtual System.Web.SiteMapNode GetCurrentNodeAndHintNeighborhoodNodes (int upLevel, int downLevel);
abstract member GetCurrentNodeAndHintNeighborhoodNodes : int * int -> System.Web.SiteMapNode
override this.GetCurrentNodeAndHintNeighborhoodNodes : int * int -> System.Web.SiteMapNode
Public Overridable Function GetCurrentNodeAndHintNeighborhoodNodes (upLevel As Integer, downLevel As Integer) As SiteMapNode

パラメーター

upLevel
Int32

フェッチする先祖 SiteMapNode 世代の数。 0 は、先祖ノードが取得されないことを示します。-1 は、プロバイダーによってすべての先祖が取得され、キャッシュされることを示します。

downLevel
Int32

フェッチする子 SiteMapNode 世代の数。 0 は、子孫ノードが取得されないことを示します。-1 は、プロバイダーによってすべての子孫ノードが取得され、キャッシュされることを示します。

戻り値

現在要求されているページを表す SiteMapNodeSiteMapNode が見つからなかった場合、または見つかったが現在のユーザーに返すことができない場合は null

例外

upLevel または downLevel が -1 未満です。

注釈

メソッドの既定の実装では、 プロパティがGetCurrentNodeAndHintNeighborhoodNodesCurrentNode返されます。ただし、サイト マップ プロバイダーは メソッドをGetCurrentNodeAndHintNeighborhoodNodesオーバーライドし、カスタム キャッシュ メカニズムを使用して現在のオブジェクトを返す最適化された実装と、SiteMapNode現在SiteMapNodeSiteMapNodeの の に近接しているオブジェクトを提供できます。

パラメーターは upLevel 、取得およびキャッシュする親ノードと先祖ノードのレベルの数と、その直接の子を指定するために使用されます。 パラメーターは downLevel 、現在 SiteMapNode のノードから取得する子孫ノードのレベルの数を指定するために使用されます。 必要に応じて、先祖ノードと子孫ノードを、 SiteMapNode によって返される にリンクできます。

GetCurrentNodeAndHintNeighborhoodNodesメソッド。および ChildNodes プロパティをParentNode使用します。 または downLevelupLevel指定されているよりも先祖または子ノード レベルが少ない場合は、使用可能なノード レベルのみが取得されます。

ASP.NET の既定のサイト マップ プロバイダーである クラスはXmlSiteMapProvider、サイト マップ全体をメモリにキャッシュします。これにより、特定SiteMapNodeのオブジェクトに対して をXmlSiteMapProviderクエリするときにオーバーヘッドがほとんどまたはまったく発生しません。

適用対象

こちらもご覧ください