PortalSiteMapProvider.GetCachedListItemsByQuery-Methode
Ruft eine Auflistung von PortalListItemSiteMapNode -Objekten, die von einer angegebenen Abfrage zurückgegebenen Elemente darstellen.
Namespace: Microsoft.SharePoint.Publishing.Navigation
Assembly: Microsoft.SharePoint.Publishing (in Microsoft.SharePoint.Publishing.dll)
Syntax
'Declaration
Public Function GetCachedListItemsByQuery ( _
webNode As PortalWebSiteMapNode, _
listName As String, _
query As SPQuery, _
contextWeb As SPWeb _
) As SiteMapNodeCollection
'Usage
Dim instance As PortalSiteMapProvider
Dim webNode As PortalWebSiteMapNode
Dim listName As String
Dim query As SPQuery
Dim contextWeb As SPWeb
Dim returnValue As SiteMapNodeCollection
returnValue = instance.GetCachedListItemsByQuery(webNode, _
listName, query, contextWeb)
public SiteMapNodeCollection GetCachedListItemsByQuery(
PortalWebSiteMapNode webNode,
string listName,
SPQuery query,
SPWeb contextWeb
)
Parameter
webNode
Typ: Microsoft.SharePoint.Publishing.Navigation.PortalWebSiteMapNodeDas PortalWebSiteMapNode -Objekt, das die Website darstellt, die die Liste der Zinsen enthält.
listName
Typ: System.StringDer Name der Liste von Interesse.
query
Typ: Microsoft.SharePoint.SPQueryDas SPQuery -Objekt der Liste ausgeführt werden.
contextWeb
Typ: Microsoft.SharePoint.SPWebDas SPWeb -Objekt, das im Kontext eines bestimmten Benutzers vorhanden ist. Dieser Parameter kann z. B. das SPContext.Current.Web -Objekt für den aktuellen Benutzer angeben.
Rückgabewert
Typ: System.Web.SiteMapNodeCollection
Ein SiteMapNodeCollection -Objekt, das PortalListItemSiteMapNode -Objekte enthält, die von der Abfrage zurückgegebenen Elemente darstellen.
Hinweise
Der contextWeb -Parameter dient zum Bestimmen der richtigen Listenelemente zurückgegeben.
Beispiele
Das folgende Beispiel verweist auf die folgenden Assemblys:
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 GetCachedListItemSample
{
// Get a list of the created dates for the list items returned by the
// given query when run against the cache.
// Note: You must call this method from within an
// HttpContext object (that is, HttpContext.Current must return a
// valid HttpContext)
public static List<DateTime>GetCachedListItemCreatedDates(
string serverRelativeWebUrl, string listName, SPQuery query)
{
List<DateTime> createdDates = null;
// Get a reference to the current navigation provider
// (that is, the one that doesn't HTML-encode titles).
PortalSiteMapProvider portalProvider =
PortalSiteMapProvider.CurrentNavSiteMapProviderNoEncode;
// Look up the node for the given Web site URL.
PortalWebSiteMapNode webNode =
portalProvider.FindSiteMapNode(serverRelativeWebUrl) as PortalWebSiteMapNode;
if (webNode != null)
{
// Retrieve nodes representing the list items returned from the
// given query, performed on the given list.
SiteMapNodeCollection listItemNodes = portalProvider.GetCachedListItemsByQuery(
webNode, listName, query, SPContext.Current.Web);
createdDates = new List<DateTime>(listItemNodes.Count);
foreach (PortalListItemSiteMapNode listItemNode in listItemNodes)
{
// Use the indexer to access a particular field, and add the value to
// the list.
createdDates.Add((DateTime)listItemNode[SPBuiltInFieldId.Created]);
}
}
// Return the list of titles.
return createdDates;
}
}
}
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 GetCachedListItemSample
' Get a list of the created dates for the list items returned by the
' given query when run against the cache.
' Note: You must call this method from within an
' HttpContext object (that is, HttpContext.Current must return a
' valid HttpContext)
Public Shared Function GetCachedListItemCreatedDates(ByVal serverRelativeWebUrl As String, ByVal listName As String, ByVal query As SPQuery) As List(Of Date)
Dim createdDates As List(Of Date) = Nothing
' Get a reference to the current navigation provider
' (that is, the one that doesn't HTML-encode titles).
Dim portalProvider As PortalSiteMapProvider = PortalSiteMapProvider.CurrentNavSiteMapProviderNoEncode
' Look up the node for the given Web site URL.
Dim webNode As PortalWebSiteMapNode = TryCast(portalProvider.FindSiteMapNode(serverRelativeWebUrl), PortalWebSiteMapNode)
If webNode IsNot Nothing Then
' Retrieve nodes representing the list items returned from the
' given query, performed on the given list.
Dim listItemNodes As SiteMapNodeCollection = portalProvider.GetCachedListItemsByQuery(webNode, listName, query, SPContext.Current.Web)
createdDates = New List(Of Date)(listItemNodes.Count)
For Each listItemNode As PortalListItemSiteMapNode In listItemNodes
' Use the indexer to access a particular field, and add the value to
' the list.
createdDates.Add(CDate(listItemNode(SPBuiltInFieldId.Created)))
Next listItemNode
End If
' Return the list of titles.
Return createdDates
End Function
End Class
End Namespace