Je travaille sur une application Web ASP.NET MVC 2 qui permet aux utilisateurs de modifier les paramètres d'une simulation et de la lancer. Une fois qu'un utilisateur commence à modifier une simulation spécifique, il doit être inaccessible aux autres utilisateurs.ASP.NET MVC Mécanisme de verrouillage d'objet
Existe-t-il un moyen facile d'atteindre cet objectif dans ASP.NET MVC?
Ma première idée était de mettre l'identité de l'utilisateur connecté dans la collection Application, avec la simulation: Application.Add ((Guid) Membership.GetUser(). ProviderUserKey, simulationId); Puis je le supprimerais dans la méthode Session_End, quand la session expirera. Toutefois, la méthode Session_End n'est jamais appelée avec ces paramètres dans le fichier web.config: sessionState mode = "InProc" timeout = "1"
Qu'est-ce que je fais mal?/Y a-t-il un meilleur mécanisme?
Il y a beaucoup de paramètres à paramétrer pour lancer une simulation, donc je préfère informer l'utilisateur dès le départ que quelqu'un d'autre est déjà dans la même simulation. Il s'agit d'une application Web qui ne sera pas utilisée par un grand nombre d'utilisateurs, donc les performances ne sont pas vraiment un problème. – alex