WCF - StructureMap - 仅在请求期间缓存对象

时间:2010-03-24 19:51:08

标签: wcf structuremap ioc-container

所以我已经有了一个带有WCF服务的StructureMap的实现实现(包括自定义实例提供程序,行为等)。

当我尝试让每个用户请求只对实例化一次的对象时,我使用InstanceScope.HttpContext并抛出它,因为上下文是null

有人有正确的方法吗?

1 个答案:

答案 0 :(得分:2)

在WCF服务的服务器端?默认情况下,WCF与ASP.NET无关,因此您的所有HttpContext等都不存在。

默认情况下,您的WCF服务将在“每次通话”的基础上调用,例如每个请求都会获得一个全新的,独立的,完全隔离的服务类实例。为什么不把这些东西作为内部字段放入服务类?

或者您可能希望查看此blog post,了解如何抽象请求状态并为ASP.NET提供示例实现(使用HttpContext.Items)和WCF。