当我将ajax发布到控制器/动作时,会话为空

时间:2016-03-16 11:32:25

标签: c# ajax session model-view-controller

我正在使用ajax进行登录。

Login是PartialView,有一个Captcha-image,它是一个控制器/动作,而不是PartialView。

在Captcha动作中,我使用Session [key] = Captcha来保存Captcha。

当我使用ajax将表单发布到Login操作时,我检查Session中的Captcha,但Session是null!

那么,有没有人知道什么是错的并给我一个帮助来解决它?

1 个答案:

答案 0 :(得分:0)

我现在解决了这个问题。

你只需添加

protected void Session_Start() {}

protected void Session_End() {}

Global.asax中的

可以解决这个问题。

原因是如果你不添加Session_Start()和Session_End(),C#MVC将为每个请求创建一个新的sessionid。

所以,你想要的会话是空的。(因为你有一个新的sessionid)。