WCF服务的启动方法在哪里?

时间:2012-03-19 13:42:38

标签: c# wcf

我需要在第一次调用wcf服务之前运行一些方法,我在哪里放这些方法? WCF服务的启动方法在哪里?

Obs1:我的WCF服务将在IIS6上运行。 Obs2:我正在使用.net framework 4.0。

2 个答案:

答案 0 :(得分:4)

执行此操作的一种方法是自托管您的WCF服务(不在IIS中)。这样,您可以在启动服务之前运行您想要的任何代码。

另一种方法是在每个服务行为实现的构造函数中添加静态方法调用。该静态方法调用将进行检查以确保已执行初始化。请确保在此调用期间处理多线程并发。

答案 1 :(得分:4)

根据服务的生命周期配置,WCF将在每次调用(singlecall),每个客户端(会话)实例化服务类,或者每个客户端(单例)的每次调用只实例一次。

您可以实现IInstanceProvide r接口并控制实例化过程。通过这种方式,您可以在实际的wcf调用完成之前调用类上的方法。