跨不同ASP.NET请求的静态属性

You*_*her 2 c# asp.net

如果我创建一个静态属性MyLanguage并且一个请求将其值设置为1,同时另一个线程将其设置为2- 最终值是MyLanguage什么?

单个MyLanguge属性是否在ASP.NET会话中共享?

Ere*_*mez 8

在应用程序域中共享静态属性/字段.因此,您的所有会话都应该看到相同的值.

唯一的例外是当您在静态字段上使用ThreadStatic属性时,在这种情况下,每个线程都将看到自己的值.例如

[ThreadStatic]
static int counter = 0; // each thread sees a different static counter.
Run Code Online (Sandbox Code Playgroud)