何时执行WCF服务中Service.svc的默认构造函数?

时间:2014-05-22 09:23:59

标签: c# wcf

以下是示例代码

[ServiceBehavior(InstanceContextMode=InstanceContextMode.Single)]
public class Service : IService
{
    public Service()
    {
      // here I am getting value from web.config 
      // using configurationManager which will be
      // changing frequently
    }

    //Method1
    ....
    //Method2
    .....

}

什么时候我的服务的构造函数会被执行? 在第一次请求期间或每次请求时?

2 个答案:

答案 0 :(得分:0)

afaik为每次请求/调用服务调用构造函数。

此外,当web.config 已更改时,如果您的应用程序托管在IIS中,应用程序池将会回收。

答案 1 :(得分:0)

如果你通过下面的浏览器使用/调用你的WCF服务,那么每次调用都会创建新的服务对象,所以执行你的服务默认构造函数。

浏览器调用:... / pricingataservice / DataService.svc / web / GetHistoryData

但是如果你通过添加对其他项目的引用来调用服务,那么只有当你创建服务对象时才会调用/执行构造函数