在WCF中初始化对象一次

本文关键字:一次 对象 WCF 初始化 | 更新日期: 2023-09-27 18:22:20

我有托管在IIS中的WCF服务。

我需要初始化一次通过对服务的所有调用将存在的几个东西。

进行这些初始化的合适地点在哪里?

感谢您的帮助。

在WCF中初始化对象一次

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

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

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

Singleton WCF服务几乎不应该被使用——Singleton是可伸缩性的敌人!它们只有在奇怪的情况下才有意义——登录到单个文件、单个通信端口或硬件设备。

您可以在静态构造函数中初始化它们,也可以将Container与Lifetime manager一起使用。

Unity 中的单点每次调用上下文(Web请求)

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