保持对象在ASP.NET中运行连接的时间

时间:2010-04-21 13:33:04

标签: .net asp.net httpmodule lifecycle iprincipal

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

我希望在连接处于活动状态时保持一个对象存活并可访问。我的意思是,一个请求进入,我为它分配一个DbCommand,并且该连接将使用该命令,只要该连接结束,该对象应该被处理。

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

您怎么看?

欢呼声

1 个答案:

答案 0 :(得分:0)

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

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

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

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