【发布时间】:2013-04-04 15:51:13
【问题描述】:
我有一个带有函数 A 的类库,它使用 HttpContext.Current.Session
我还有一个带有 WebMethods 的 asmx 类,其中一个调用类库中的函数 A。
当 WS 方法调用函数 A 时,它会因错误而失败:
Null reference object
HttpContext.Current 为空!
我通过添加属性在 Web 方法中启用了会话:
[WebMethod(EnableSession = true)]
但我不断收到错误消息。 如果我从与 WS 函数相同的项目中的一个简单函数调用函数 A,它可以正常工作。仅从 WS asmx 函数失败。 我需要做什么? 这很重要, 谢谢!!!
【问题讨论】:
-
尝试将
Session作为参数传递给您的类库函数。 -
这对我不好,因为类库也被其他项目使用,
-
由于你的类库使用
HTTPContext,它是特定于Web应用程序的,每个Web应用程序都可以相应地传递会话。 -
你如何在 asmx 服务中调用你的 web 方法?您确定您通过该请求传递了 sessionId cookie 吗?没有该信息就无法重新创建会话。
-
不,我不向函数发送任何 sessionid。我到底要做什么?谢谢。
标签: c# asp.net web-services asmx session-state