正在从WCF Windows主机中的不同文件夹加载WCF服务
本文关键字:WCF 文件夹 加载 服务 Windows 主机 | 更新日期: 2023-09-27 18:25:07
我想从WCF Windows主机加载WCF服务dll。EXE文件。但是WCf Service.dll存储在其他文件夹中。
文件夹结构:
'@root'Service'WCFService.dll (this is service)
'@root'Host'WCFHost.exe (this is host exe)
'@root'Host'WCFHost.exe.config (this is host exe configuration)
<services>
<service name="XXX.Service">
<endpoint address="http" binding="basicHttpBinding" contract="XXX.IService" />
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
<host>
<baseAddresses>
<add baseAddress="http://localhost:8035/Service" />
</baseAddresses>
</host>
</service>
<services>
当我启动windows服务时,我会收到以下错误:
无法启动服务。System.IO.FileNotFoundException:未能加载文件或程序集'XXX.Service,版本=1.0.0.0,区域性=中性,PublicKeyToken=null'或其依赖项之一。系统无法找到指定的文件。文件名:'XXX.Service,版本=1.0.0.0,区域性=中性,PublicKeyToken=null。
提前感谢,Nizam
假设代码示例中的XXX是服务实现的完全限定命名空间,那么这里有一些建议:
- WCFService.dll的依赖项与exe或GAC不在同一目录中
- 您正在生成host.exe的签名版本,该版本正试图加载WCFService.dll的未签名版本