Puis-je filtrer dynamiquement les résultats de CQWP en utilisant la valeur d'un cookie?
-
16-10-2019 - |
Question
Je suis en mesure de filtrer les résultats de CQWP à l'aide de la chaîne de requête en utilisant le mot-clé (PageQueryString) (référence: http://blogs.msdn.com/b/ecm/archive/2010/05/14/ what-s-nouvelle-avec-la-requête de contenu Web-part.aspx ) Y at-il une manière similaire à filtrer les résultats en utilisant la valeur d'un cookie?
La solution
Je pense que vous devriez utiliser l'idée de cet article génial Andrew Connel:
Tout ce que vous devez faire en fait, est de remplacer Request.QueryString
Autres conseils
Vous serez probablement en mesure de le faire, mais vous ne pouvez pas le faire dans le CQWP lui-même. Le XSL dans le CQWP court côté serveur, et le cookie va vivre côté client. Vous pouvez utiliser à la place de script (je vous recommande jQuery) pour lire le cookie et l'autre filtre ce que CQWP a envoyé au navigateur.
Sinon, vous pouvez utiliser des scripts côté client entièrement soit avec le client OM ou SPServices .
Vous pouvez obtenir les informations d'un cookie. Voici ce que je faisais.
private string GetCookieInfo(string cookieName)
{
string cookieInformation = null;
if (HttpContext.Current.Request.Cookies[cookieName] != null)
{
cookieInformation = HttpContext.Current.Request.Cookies[cookieName].Value;
}
return cookieInformation;
}
J'utilise la valeur retournée dans le cookie dans la requête CAML pour obtenir des informations à partir d'une liste SharePoint. Les informations de liste retournée comprend une valeur pour l'URL Web, qui est utilisé par le CQWP de connaître les données à afficher.