Domanda

Sto costruendo una soluzione sandbox di SharePoint che si compone di più parti web. Voglio essere in grado in qualche modo di cache oggetti POCO (Plain Old CLR Objects) in modo tale che la cache viene mantenuto tra le richieste a piena pagina e le opere di cache in SharePoint online.

Ho guardato i seguenti meccanismi:

  • Salvataggio dei file sul file system o in Isolato bagagli -. Non funziona perché lo spazio dei nomi System.IO sembra essere bloccato in soluzioni sandbox
  • Utilizzando l'infrastruttura ASP.NET Cache / Session / Application -. Non funziona, la cache viene azzerato ogni volta che una nuova richiesta di pagina è fatto
  • Utilizzando l'infrastruttura Microsoft.Office.Server.ObjectCache.SPCache -. Non sembra al lavoro, la cache viene azzerato allo stesso modo come con cache di ASP.NET
  • utilizzando una cache handcoded in memoria:. (private static Dictionary<string, object> ...) - non funziona, l'istanza dizionario è perso attraverso http richieste di pagine

Fa tutto quanto sopra media che la mia unica possibilità di memorizzare qualsiasi tipo di dati in soluzioni di sandbox SharePoint è quello di utilizzare gli elenchi Sharepoint / list-articoli?

È stato utile?

Soluzione

Sì, elenchi di SharePoint sono l'unica opzione in questo caso.

Ogni richiesta viene marshalling da ASP.NET/SharePoint ad uno specifico processo di Sandbox. Tali processi e AppDomain non sono garantiti per essere lo stesso o addirittura sulla stessa macchina, in modo che qualsiasi tipo di cache in memoria è fuori questione.

Altri suggerimenti

Invece di creare webparts, è possibile creare applicazioni Silverlight che non generano un postback.

Poi di nuovo, applicazioni Silverlight sono limitate a causa della Object lato client del modello.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a sharepoint.stackexchange
scroll top