Question

Comment puis-je persister des données spécifiques utilisateur pour une application ASP.Net.

J'ai essayé une variable de session -. Pas bon lorsque le processus de travail recycle

Je besoin de quelque chose qui peut être consulté GLOBALEMENT par une classe de ma demande.

Conseils bienvenue.

J'ai essayé d'utiliser l'état de session de asp.net Server, mais je suis arrivé quelques DLLs s'écraser parce qu'ils sont sérialisable.

Y at-il une autre façon d'avoir une variable persistante dans l'application?

Était-ce utile?

La solution

état de session ASP.NET peut être configuré pour persister à une base de données.

Voici un tutoriel sur la façon de mettre en place que.

Autres conseils

Data Store dans une base de données (telles que SQL Server).

Vous devez utiliser session. Vous pouvez accéder à l'échelle mondiale état de session dans une classe comme ça ...

HttpContext.Current.Session

Pour éviter de perdre des sessions par le recyclage des processus de travail, utilisez mode de StateServer.

Il n'y a rien que vous pouvez vraiment faire le recyclage des processus. Si vous utilisez le cache intelligemment pour conserver les informations dans un sens plus global, mais vous avez toujours la même limitation de processus de travail.

J'essaie de concevoir mon application dans une configuration multiniveau avec des objets d'entité commerciale. Les méthodes d'usine pour mes objets utilisent le cache comme une sorte de modèle de instantiation paresseux. Si son dans le cahce, tirez. Dans le cas contraire, le mettre dans le cache pour la prochaine fois.

i.e.

MyAppsNameSpace.MyBusinessLayerNameSpace.MyObject.GetObject(objectID)

maintenant, quand cela retourne mon objet, il peut être à partir du cache ou non, si l'objet est en utilisation intensive, alors il sera probablement mis en cache.

Cela peut être utilisé dans votre application entière et parce que le mécanisme de mise en cache est maintenu au centre vous n'avez pas vraiment inquiéter.

Vous pouvez utiliser le fournisseur de profils avec une base de données SQL en tant que votre magasin de sauvegarde.

Voir cette MSDN article

Si vous perdez des données lorsque le processus de travail recycle alors vous devriez cesser d'utiliser le mode persistence InProc pour la session. Utilisez StateServer ou SQL Server. En fin de compte, vous pouvez construire votre propre module de persistence de session si ni satisfait vous.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top