我有具有SVC使用文件少激活我使用的是自定义的主机厂家不是默认的,下面为什么每次都调用WCF自定义的ServiceHostFactory?
<serviceHostingEnvironment>
<serviceActivations>
<add factory="String"
service="String"/>
</serviceActivations>
</serviceHostingEnvironment>
一个WCF服务(IIS 7.5中托管)。
而服务是WSTrustServiceContract。现在,如果你看到这个类
[ServiceBehaviorAttribute(Name = "SecurityTokenService", Namespace = "http://schemas.microsoft.com/ws/2008/06/identity/securitytokenservice",
InstanceContextMode = InstanceContextMode.Single, ConcurrencyMode = ConcurrencyMode.Multiple)]
[AspNetCompatibilityRequirementsAttribute(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
public class WSTrustServiceContract : IWSTrustFeb2005SyncContract,
IWSTrust13SyncContract, IWSTrustFeb2005AsyncContract, IWSTrust13AsyncContract, IWsdlExportExtension, IContractBehavior
的声明,使我们可以推断,
- 定制主机工厂将被调用,以创建服务的实例。
- 一旦服务实例被创建,它会在那里为所有请求(InstanceContextMode.Single)
我的问题是
- 为什么找每个调用创建自定义主机工厂的实例(我在这个工厂的构造函数中有一个断点,我通过附加到w3wc实例来进行调试)?
- 为什么我的服务实例是每次调用创建的?
尝试再次检查您的配置。我试图通过创建示例应用程序来模拟它,但它工作正常,只创建了自定义主机工厂和服务的一个实例。 –
@Lukas:我应该检查什么配置? – ViBi
你能告诉我你的自定义主机工厂如何创建该服务的实例吗? –