C# WCF:编程设置端点

C# WCF:编程设置端点,c#,.net,wcf,C#,.net,Wcf,我正在尝试通过编程设置WCF连接的端点 我一直不能,下面的代码是我正在使用的代码,有人帮我找出什么是错误的吗 Uri wsBaseAddress = new Uri("http://localhost:27198/"); ServiceHost host = new ServiceHost(typeof(ServiceClient), wsBaseAddress); WSHttpBinding wshttpbinding = new WSHtt

我正在尝试通过编程设置WCF连接的端点

我一直不能,下面的代码是我正在使用的代码,有人帮我找出什么是错误的吗

        Uri wsBaseAddress = new Uri("http://localhost:27198/");

        ServiceHost host = new ServiceHost(typeof(ServiceClient), wsBaseAddress);

        WSHttpBinding wshttpbinding = new WSHttpBinding();

        host.AddServiceEndpoint(typeof(IService), wshttpbinding, "ServiceClient");
        host.AddServiceEndpoint(typeof(IService), wshttpbinding,
           "http://localhost:27198/Service.svc");

        host.Open();
编辑:

错误:HTTP无法注册URL“HTTP://+:27198/”,因为TCP端口 27198正在被另一个应用程序使用。”

多谢各位

HTTP无法注册URL“HTTP://+:27198/”,因为TCP端口27198正被另一个应用程序使用

这几乎说明了一切。另一个应用程序当前正在侦听该端口,并且由于在给定时刻只有一个应用程序可以绑定到给定的端口和IP,因此您的程序不能

cmd
中执行
netstat-abn
,查看哪个程序最可能是ASP.NET开发服务器


如果没有其他程序绑定到该端口,您可以尝试以管理员身份运行Visual Studio。

下面的语句不提供服务名称,尽管在添加端点的最后一个语句中没有使用该名称

 Uri wsBaseAddress = new Uri("http://localhost:27198/");
应该是

 Uri wsBaseAddress = new Uri("http://localhost:27198/Service");
您必须提供服务名称,而不是扩展名为的服务文件名

改变

host.AddServiceEndpoint(typeof(IService), wshttpbinding,
           "http://localhost:27198/Service.svc");


什么不起作用?你有错误吗?@cadrell0抱歉,请看我的编辑。我真的不明白为什么会发生此错误。但这与我的客户端app.config中的地址相同。它以前是如何工作的?@user101010101检查您的客户端应用程序当前是否正在运行并侦听该端口,然后您尝试启动第二个实例。您遇到了什么错误,您的服务正在运行吗?您托管服务的位置?{“HTTP无法注册URL HTTP://+:27198/service/,因为另一个应用程序正在使用TCP端口27198。”}。与以前的错误相同。它托管在我的本地计算机上,是的,我检查了服务是否正在运行。该服务已注册到go you web.config,并在那里找到具有相同端口的url(如果存在),然后从那里删除该服务
 host.AddServiceEndpoint(typeof(IService), wshttpbinding,
           "http://localhost:27198/Service");