0
我有两个控制器方法:MVC3会话控制器方法之间不一致吗?
public string Nothing()
{
if (Session["done"] == null)
{
Session["done"] = false;
}
while (!bool.Parse(Session["done"].ToString()))
{
System.Threading.Thread.Sleep(1000);
}
return "done";
}
public string AnotherMethod()
{
Session["done"] = true;
return "hello";
}
第一种方法被调用,所述第二方法的目的是阻止所述第一方法的执行。但是,当我在调试过程中观察变量时,Nothing方法永远不会停止执行,并且Session["done"]
值始终为false
,即使调用其他控制器方法后也是如此。 AnotherMethod中的可变更改?
因此,一个会话每个线程创建?我将如何解决这个问题? – Tjaart 2012-02-08 09:14:08
@Tjaart。我加了一个snipet。 – gdoron 2012-02-08 09:23:48
谢谢!这很好! – Tjaart 2012-02-08 09:47:32