2010-04-07 7 views
2

Je me demande s'il y a une autre solution à mon problème, cela est considéré comme plus la façon Sharepoint. En premier lieu, mon site est un site internet, pas un intranet. Le problème est, tout ce que j'essaie de faire est d'enregistrer des valeurs/variables de page en page dans Sharepoint. Je connais le problème avec les variables de session, mais cela semble être la seule façon de voir cela. Je sais qu'il y a des webparts qui peuvent stocker cette valeur, mais ai-je tort de penser que cela ne sera pas persistant d'une page à l'autre?persister valeurs/variables de page en page

Fondamentalement, je vais étendre le composant WebPart Requête de contenu pour filtrer dynamiquement ses résultats en fonction d'une variable/valeur. L'utilisateur choisit sa «zone» dans une liste déroulante, et le PQWP du site changera et interrogera les résultats en fonction de cette valeur (il s'agira d'une structure provinciale car il s'agit d'un site canadien, donc si quelqu'un choisit la province «Ontario» , cette valeur est sauvegardée dans une variable globale, et ces CQWP étendus qui sont dans tout le site, obtiendront cette valeur, et les listes de requêtes marquées comme Ontario).

Les variables de session sont-elles la seule solution?

Merci à tous!

Répondre

0

Les variables de session ne sont pas la seule solution. Vous pouvez également utiliser les cookies du navigateur.

Pas nécessairement le "SharePoint Way", mais c'est une option.

0

Le moyen de SharePoint serait probablement d'utiliser quelque chose dans le profil de l'utilisateur, bien que cela ne soit pas approprié pour un site anonyme. Ne vous inquiétez pas trop d'aller en dehors de la façon de faire de SharePoint - avec un site internet c'est à peu près inévitable. Je recommande un cookie plutôt qu'une variable de session si vous avez seulement besoin de stocker la valeur unique - simple à utiliser du code client ou serveur, et aucun des problèmes de stockage potentiels que vous obtenez avec la session.

0

Vous pouvez toujours utiliser la base de données pour conserver ce type de données. Ne pas mentaliser les problèmes avec les sessions dans le scénario de batterie de serveurs SharePoint.

0

Vous pouvez lire, écrire ou supprimer des valeurs/clés de persistance au niveau de l'application Web ou Web. Consultez SPWeb.Properties Property.

string strKey = "YourKey"; 
string strValue = "YourValue"; 

if (web.Properties.ContainsKey(strKey)) 
    // if property exists then update it 
    web.Properties[strKey] = strValue; 
else 
    // if property doesn't exist then add it 
    web.Properties.Add(strKey, strValue); 

web.Properties.Update(); 
Questions connexes