在WCF中初始化对象一次

时间:2012-02-02 13:36:24

标签: c# .net wcf

我拥有WCF托管的IIS服务。

我需要初始化一次通过所有服务调用而存在的事情。

进行初始化的适当位置在哪里?

感谢您的帮助。

3 个答案:

答案 0 :(得分:4)

使用构造函数(BaseService或实际服务类的构造函数)来初始化这些属性

请记住,当为每个呼叫实例模式配置WCF服务时,将为每个客户端请求创建服务实例

如果不是严格要求,请不要使用任何Singleton策略:

单身WCF服务几乎不应该被使用 - 单身人士是可扩展性的敌人!它们只在奇怪的情况下才有意义 - 记录到单个文件,单个通信端口或硬件设备。

答案 1 :(得分:1)

您可以在静态构造函数中初始化它们,也可以使用带有Lifetime管理器的Container。

Singleton Per Call Context (Web Request) in Unity

答案 2 :(得分:1)

如果您的WCF服务配置为使用ASP.NET兼容模式,那么只需在Global.asax中的Application_OnStart中初始化它们。

相关问题