0

我正在使用 ASP.NET 开发 Web 服务,它不是 .asmx 或 WCF,它是自定义的,所以我正在使用 Http 类(上下文、请求、响应等)。会话被禁用。我正在使用我自己的处理程序和模块。

我想在连接有效时保持对象的活动和可访问性。我的意思是,一个请求进入,我为它分配了一个 DbCommand 并且该连接将使用该命令,只要正在执行操作,当该连接结束时,该对象应该被释放。

我想,我可以将它添加到我的 IPrincipal 实现中,然后当在模块中对连接进行身份验证并检索到用户时,我可以将该 DbCommand 添加到 IPrincipal 中,这样我就可以从代码中的任何位置检索它,然后在模块 EndRequest 事件中,我可以处理它,但我不知道是否有更好的方法来做到这一点。

你怎么看?

干杯

4

1 回答 1

0

它在某种程度上取决于您的 WCF 配置。

我建议你阅读这篇文章,因为它可能会让你对你想要采取的方向有所了解。 http://msdn.microsoft.com/en-us/magazine/cc163590.aspx

您的客户将如何连接到服务?

您还可以在服务上使用单例模式(因此它及其数据在“会话”中持续存在)并基于每个用户将数据存储在服务对象本身中。

于 2010-04-21T13:41:22.340 回答