MVC3控制器变量可访问性

Chr*_*low 7 c# asp.net-mvc-3

我是MVC3的新手,来自Winforms背景.我有一个由两部分组成的问题.第一个很简单 - 如果我有一个带有私有非静态变量的Controller,那么对于浏览我的应用程序的每个用户,我是否会为该变量设置一个单独的"实例"?

第二个问题更多是一个普遍的问题......但我不确定要问它的正确的话.=)我们假设我的网络应用程序位于通过网络提供一些文本的服务器上,并且需要将该文本发布给特定的最终用户(通过AJAX),我如何"找到"该用户的会话?我担心的目标是在可能有50个连接到服务器的情况下仅在一个用户的浏览器中发布文本.什么是正确的方法去做?

谢谢!

Dar*_*rov 7

如果我有一个带有私有非静态变量的Controller,我是否会为每个浏览我的应用程序的用户都有一个单独的"变量实例"

是的,每个用户请求都有一个单独的实例.如果控制器(和私有字段)执行连续请求,即使是同一个用户,也会有一个单独的控制器实例(和私有字段).控制器的生命周期仅与给定的HTTP请求相关联.

我如何"找到"该用户的会话?

ASP.NET使用cookie跟踪用户会话.Cookie会自动沿AJAX请求发送,因此服务器将能够识别用户.看看ASP.NET Session状态.