2013-04-10 67 views
0

我开发了一个ASP.NET MVC 3网站,并且我在各个地方都使用了TempData。我希望我的用户不要在同一会话中打开多个浏览器的选项卡/窗口,以避免会话数据发生冲突。如何施加这一限制?如何限制用户在同一会话中打开多个浏览器选项卡(窗口)?

+0

我可能会错过你的观点,但了解tempdata与会话无关。 – 2013-04-10 03:46:29

+0

不,tempdata在后台使用会话。但是,tempdata被擦除(除非我们使用.Keep方法明确地保留它们)。 – Nirman 2013-04-10 04:35:01

+0

IC。没有意识到。阅读这个,也许有趣http://www.gregshackles.com/2010/07/asp-net-mvc-do-you-know-where-your-tempdata-is/ – 2013-04-10 04:51:12

回答

0

这是不可能的。您在服务器端没有关于在客户端打开多少个窗口的任何信息。此外,如果您需要限制用户打开更多的窗口,那么您明确地做错了什么,因为它是一个Web应用程序在多个窗口中工作的性质。

但是,您可以使用通过使您的应用程序完全在AJAX(它们被命名的一个页面应用程序)中来减少这种可能性。因此,除了在另一个选项卡上手动打开应用程序的起始页面之外,用户将无法打开多个窗口。但是你不能对此做任何事情。一旦开始 - 这确实是一个非常糟糕的设计。

相关问题