Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
IIS/WAS中托管的非HTTP WCF服务中初始化代码的正确位置?_Wcf_Msmq_Netmsmqbinding_Msmq Wcf - Fatal编程技术网

IIS/WAS中托管的非HTTP WCF服务中初始化代码的正确位置?

IIS/WAS中托管的非HTTP WCF服务中初始化代码的正确位置?,wcf,msmq,netmsmqbinding,msmq-wcf,Wcf,Msmq,Netmsmqbinding,Msmq Wcf,我的理解是,为net.msmq配置的WCF服务在IIS/WAS中托管时不会作为HttpApplication运行,这意味着您无法在全局中获取事件(Application_Start是重要的一个)。这方面我说得对吗 使用Windows Server AppFabric自动启动服务是否会通过HTTP命中服务,从而引发应用程序启动事件?如果是,这是否可靠 我想我真正的问题是,非HTTP WCF服务的初始化代码的“适当”位置在哪里 特别是(因为对于不同的东西,正确的位置可能不同): 国际奥委会注册 l

我的理解是,为net.msmq配置的WCF服务在IIS/WAS中托管时不会作为HttpApplication运行,这意味着您无法在全局中获取事件(Application_Start是重要的一个)。这方面我说得对吗

使用Windows Server AppFabric自动启动服务是否会通过HTTP命中服务,从而引发应用程序启动事件?如果是,这是否可靠

我想我真正的问题是,非HTTP WCF服务的初始化代码的“适当”位置在哪里

特别是(因为对于不同的东西,正确的位置可能不同):

  • 国际奥委会注册
  • log4net初始化
  • 验证本地是否存在MSMQ队列(正如Juval Lowy在其WCF书中所建议的那样)

后续问题:自定义iSeries行为中的事件是在每次请求时触发,还是在启动时仅触发一次?ServiceHost.OnOpening()如何-每个请求或仅在启动时一次?(我的测试只显示了一次,但有人知道WCF“生命周期”记录在哪里,因为我似乎在任何地方都找不到它。)

我无法验证IIS/WAS中承载的WCF服务是否无法配置为支持应用程序启动,但不需要执行您想要的操作。我建议您结合自定义ServiceHostFactory(用于WAS)创建自定义ServiceHost。该方法记录在和中。使用这种方法,您可以在IIS/WAS、Windows服务或控制台应用程序中托管您的服务,因为初始化过程将是相同的