【发布时间】:2014-08-05 23:12:00
【问题描述】:
我创建了一个自定义会话类并继承了连接oracle的SessionStateStoreProviderBase。
我用的是this how-to,只需替换成Oracle.DataAccess的连接类即可。
直到那时一切都在本地工作,但是当我在具有自定义类 SessionStateStoreProviderBase 的 iis 7.5 服务器上发布时,它仍然工作,但变量“session”(HttpSessionStateBase)为零(null)。例如:会话[“idUser”]。 有什么我忘记了吗?请我需要帮助,因为文档似乎对此并不清楚。
我的 web.config:
<sessionState timeout="30" mode="Custom" cookieless="false" customProvider="CustomSessionProvider" sessionIDManagerType="namespace.CustomSessionIdManager">
<providers>
<add name="CustomSessionProvider" type="namespace.SessionDataProvider" connectionStringName="connectionOracle" />
</providers>
</sessionState>
<authentication mode="Forms">
<forms loginUrl="~/Login" defaultUrl="~/Inicio" />
</authentication>
错误日志 IIS:
#Software: Microsoft Internet Information Services 7.5
#Version: 1.0
#Date: 2014-08-05 01:14:37
#Fields: date time s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-Agent) sc-status sc-substatus sc-win32-status time-taken
2014-08-05 01:14:37 192.168.xxx.xx GET / - 80 - 10.100.xxx.xx Mozilla/5.0+(Windows+NT+6.1;+WOW64)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Chrome/34.0.1847.131+Safari/537.36 302 0 0 6239
2014-08-05 01:14:37 192.168.xxx.xx GET /Inicio - 80 - 10.100.xxx.xx Mozilla/5.0+(Windows+NT+6.1;+WOW64)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Chrome/34.0.1847.131+Safari/537.36 500 0 0 374
控制器中的异常:
对象引用未设置为对象的实例 之前验证会话是否为空。
谢谢。
【问题讨论】:
-
我们可能需要您的部分代码
-
我没有发布我的代码,因为它很大并且等于这个实例,只替代了oracle odbc连接。见:msdn.microsoft.com/pt-br/library/ms178589(v=vs.100).aspx
-
Session_Start 也没有被执行。自定义时,会话没有任何作用。仅使用 cookie 和 in_proc。谁能帮帮我?
-
我看了一下这个例子。那里没什么可疑的。您需要帮助调试它吗?我也会用新的信息再看一遍。
-
我进行了本地模拟,禁用了模块会话,并在发布到服务器时重现了相同的错误。简单的登录模块似乎不起作用,我没有 iis 经验。 Ai 在任何使用会话的语句中都会出错。
标签: c# asp.net-mvc oracle visual-studio-2013