Les Variables globales vs ASP.NET l'État de Session

Cela va probablement sembler plutôt naïf, mais je suis de développement d'une application web qui s'étend sur plusieurs pages. L'ensemble de ces pages instancier la même classe de l'objet w/méthodes qui accède à un CMS à l'aide de leur API. Actuellement, lorsqu'un utilisateur démarre la création de contenu, je suis stocker des variables comme l'un ID de dossier où le contenu se trouve dans une variable de Session.

Ma question est: puis-je instancier qu'une seule instance d'une classe qui peut être utilisé sur toutes les pages sans avoir à le faire sur chaque page? Si c'est le cas, chaque personne accédant à la page de leur propre version de la classe? Je suppose qu'en utilisant les variables et méthodes statiques n'est pas la voie à suivre, car ils sont partagés dans la mémoire. Et aussi, où/comment est quelque chose déclarée si elle va être utilisée à l'échelle mondiale, dans une Application Web dans un .net application en C#?

Une question semblable a été posée et je pense que ce répondre résume assez bien toutes vos options.
double possible de Cache VS Session VS les cookies?
"Et aussi, où/comment est quelque chose déclarée si elle va être utilisée à l'échelle mondiale, dans une Application Web dans un .net application en C#?" Vous pourriez préciser que la question un peu. Vous pouvez certainement définir des classes dans un montage spécifique, et la référence de cette assemblée lors de la construction de ASP.NET les sites web, les services web, la console apps, etc. TOUTEFOIS, si vous avez besoin d'applications disparates pour partager une INSTANCE spécifique d'une classe, alors vous avez probablement besoin de chercher .NET remoting ou des techniques similaires.

OriginalL'auteur Anthony Levine | 2011-07-20