这可能是一个简单的解决方案。
我在像这样的项目中创建了最简单的WCF主机
static void Main(string[] args)
{
using (ServiceHost host = new ServiceHost(
typeof(AmphoraService.ConsignmentService.Consignment)))
{
host.Open();
Console.WriteLine("Consignment Service Activated! Press <Enter> to terminate " +
"the Host application.");
Console.WriteLine();
Console.ReadLine();
}
}
我在app.config文件中提供了配置。
在Visual Studio中按F5时,它成功运行。文本显示在控制台窗口中,“netstat -a”显示端口808正在侦听(它是nettcp绑定)
但是,当我退出Visual Studio并尝试单击bin \ debug ***。exe文件时,会出现一个控制台窗口,但没有任何反应!并且“netstat -a”显示端口808没有监听。
我在俯瞰什么?
答案 0 :(得分:1)
如果没有任何反应,可能该程序位于host.Open()
行。尝试将visual studio连接到该实例(使用Debug&gt; attatch进行处理)。
您也可以尝试等待一段时间,看看是否有异常,例如超时等等,当ServiceHost试图实现您的服务对象时可能会出现问题
第一次运行它时,某些资源可能会被锁定(在visual studio中)?如果你重新启动并首先从资源管理器运行exe会怎么样?