PortalSiteMapProvider.GetCachedSiteDataQuery Method
Returns the cached result of a SiteDataQuery object.
Namespace: Microsoft.SharePoint.Publishing.Navigation
Assembly: Microsoft.SharePoint.Publishing (in Microsoft.SharePoint.Publishing.dll)
Syntax
'Declaration
Public Function GetCachedSiteDataQuery ( _
webNode As PortalWebSiteMapNode, _
query As SPSiteDataQuery, _
contextWeb As SPWeb _
) As DataTable
'Usage
Dim instance As PortalSiteMapProvider
Dim webNode As PortalWebSiteMapNode
Dim query As SPSiteDataQuery
Dim contextWeb As SPWeb
Dim returnValue As DataTable
returnValue = instance.GetCachedSiteDataQuery(webNode, _
query, contextWeb)
public DataTable GetCachedSiteDataQuery(
PortalWebSiteMapNode webNode,
SPSiteDataQuery query,
SPWeb contextWeb
)
Parameters
webNode
Type: Microsoft.SharePoint.Publishing.Navigation.PortalWebSiteMapNodePortalWebSiteMapNode object that represents the Web site that contains the data.
query
Type: Microsoft.SharePoint.SPSiteDataQueryThe SPSiteDataQuery to run.
contextWeb
Type: Microsoft.SharePoint.SPWebThe SPWeb object that exists within the context of a particular user. For example, this parameter can specify the SPContext.Current.Web object.
Return Value
Type: System.Data.DataTable
The result returns only major or minor versions, not items that are checked out to the current user.
Remarks
The contextWeb parameter is used to determine the correct items to return.
Examples
The following example references the following assemblies:
System.dll
System.Data.dll
System.Xml.dll
System.Web.dll
System.Configuration.dll
Microsoft.SharePoint.dll
Microsoft.SharePoint.Library.dll
Microsoft.SharePoint.Publishing.dll
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Web;
using Microsoft.SharePoint;
using Microsoft.SharePoint.Navigation;
using Microsoft.SharePoint.Publishing;
using Microsoft.SharePoint.Publishing.Navigation;
namespace Microsoft.SDK.SharePointServer.Samples
{
class GetCachedSiteDataQuerySample
{
// Runs a given site data query against the cache and returns the results.
// Note: You must call this method from within an HttpContext object (for example, HttpContext.Current
// must return a valid HttpContext).
public DataTable GetCachedSiteDataQuery(string webUrl, SPSiteDataQuery siteDataQuery)
{
PortalSiteMapProvider portalProvider = PortalSiteMapProvider.CurrentNavSiteMapProviderNoEncode;
PortalWebSiteMapNode webNode = portalProvider.FindSiteMapNode(webUrl) as PortalWebSiteMapNode;
if (webNode != null)
{
return portalProvider.GetCachedSiteDataQuery(
webNode, siteDataQuery, SPContext.Current.Web);
}
return null;
}
}
}
Imports System
Imports System.Collections.Generic
Imports System.Text
Imports System.Data
Imports System.Web
Imports Microsoft.SharePoint
Imports Microsoft.SharePoint.Navigation
Imports Microsoft.SharePoint.Publishing
Imports Microsoft.SharePoint.Publishing.Navigation
Namespace Microsoft.SDK.SharePointServer.Samples
Friend Class GetCachedSiteDataQuerySample
' Runs a given site data query against the cache and returns the results.
' Note: You must call this method from within an HttpContext object (for example, HttpContext.Current
' must return a valid HttpContext).
Public Function GetCachedSiteDataQuery(ByVal webUrl As String, ByVal siteDataQuery As SPSiteDataQuery) As DataTable
Dim portalProvider As PortalSiteMapProvider = PortalSiteMapProvider.CurrentNavSiteMapProviderNoEncode
Dim webNode As PortalWebSiteMapNode = TryCast(portalProvider.FindSiteMapNode(webUrl), PortalWebSiteMapNode)
If webNode IsNot Nothing Then
Return portalProvider.GetCachedSiteDataQuery(webNode, siteDataQuery, SPContext.Current.Web)
End If
Return Nothing
End Function
End Class
End Namespace