我正在开发一个带有ASP.NET的Web服务,不是.asmx或WCF,它是自定义的,所以我正在使用Http类(上下文,请求,响应等)。会话被禁用。我正在处理我自己的处理程序和模块。在ASP.NET中运行连接时保留一个对象
我想保持一个对象活着并且在连接存活的时候可以访问。我的意思是,一个请求进入,我给它分配一个DbCommand,并且该连接将使用该命令,只要该连接结束,该对象应该被丢弃。我认为,我可以将它添加到我的IPrincipal实现,然后当连接在模块中进行身份验证并且用户检索到时,我可以将该DbCommand添加到IPrincipal,以便我可以从任何地方想要在代码中,并在模块EndRequest事件后,我可以处置它,但我不知道是否有更好的方法来做到这一点。
您认为如何?
欢呼声
这不是WCF。客户端连接一个简单的WebRequest。我想避免的是为此保留一个集合,因为那样我必须同步访问并添加/删除。例如,我只想将对象粘贴到HttpConext或HttpRequest,但我不知道在哪里。干杯。 – vtortola 2010-04-21 13:54:39
啊,我误解了这个问题!我道歉。 你最好的选择(恕我直言)将是缓存然后。您不需要使用缓存中的集合来存储对象,并可以依赖用户特定的数据作为检索其对象的关键。 – Krisc 2010-04-21 14:01:18
但随着缓存将持续在连接之间,不是吗?我想保留它只是为了连接时间。 – vtortola 2010-04-21 14:17:42