繁体   English   中英

自托管WCF服务

[英]Self-hosting a WCF service

我正在使用WCF服务,并将其托管在控制台应用程序中。 我所有的配置都保存在XML文件中。 该服务运行良好,我可以从客户端将其很好地连接,但是令我困扰的是,当我启动它时,WcfSvcHost应用程序启动(在我的图标栏中)并说“您的服务已被托管。... ”。 但是,当我单击它时,它显示了我的服务,并且在状态下显示“已停止”(错误是未定义端点)。

我有两个项目,一个带有服务,另一个托管它。 错误指向其中包含服务的项目,该项目未定义配置,因为(i假定)那里不需要该配置。 我在承载服务的项目中的所有配置都位于App.config中。

我如何摆脱信息? 甚至是一个问题还是正常?

PS我只启动承载服务的项目,而不启动包含服务代码的项目。

在项目上单击一下之后,我找到了解决方案。 如果右键单击“服务库”项目,则在“ WCF选项”下,有一个选项“在解决方案中调试另一个项目时启动WCF服务主机”,只需取消选中它,它就会停止。

另外,请查看Scott Chamberlain的回答,在某些情况下可能是原因。

如果WcfSvcHost正在启动,则您的托管应用未启动。 即使您说要启动托管应用程序,也要仔细检查是否已将服务库设置为启动项目。

在此处输入图片说明

在上图中,启动项目应该是HostingApp您可能已将其设置为WcfServiceLibrary


另一种可能是您的托管应用设置错误,请在托管应用的项目设置中检查输出类型为Windows Application

在此处输入图片说明

如果将其设置为“ Class Library则在“命令行参数” /client:"WcfTestClient.exe"具有/client:"WcfTestClient.exe" ,这也可能会引起问题。 如果您以“服务库”形式启动项目,但是后来又决定将其提交给托管应用程序,则很容易发生这种情况。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM