Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/262.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

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
C# 在服务器上托管wcf应用程序_C#_Wcf - Fatal编程技术网

C# 在服务器上托管wcf应用程序

C# 在服务器上托管wcf应用程序,c#,wcf,C#,Wcf,我刚刚开始学习WCF,并成功创建了一个简单的WCF控制台应用程序,允许我在客户端控制台中输入文本,将文本传递到服务器,然后返回到客户端。我所做的与此页面中的代码类似: 现在的问题是端点的地址是“net”。tcp://localhost:9000/ABCD". 虽然我已经在桌面上创建了主机应用程序(也是一个控制台程序),但实际上我希望它位于带有URL的服务器上。我所做的就是改变“网络”。tcp://localhost:9000/ABCD“到”网。tcp://urlofserver:9000/ABC

我刚刚开始学习WCF,并成功创建了一个简单的WCF控制台应用程序,允许我在客户端控制台中输入文本,将文本传递到服务器,然后返回到客户端。我所做的与此页面中的代码类似:

现在的问题是端点的地址是“net”。tcp://localhost:9000/ABCD". 虽然我已经在桌面上创建了主机应用程序(也是一个控制台程序),但实际上我希望它位于带有URL的服务器上。我所做的就是改变“网络”。tcp://localhost:9000/ABCD“到”网。tcp://urlofserver:9000/ABCD,生成解决方案,然后将visual studio的bin文件夹中生成的exe和dll文件复制到服务器中的随机文件夹中。当我最终在服务器上运行console主机程序时,它抛出了一个错误

抱歉,如果我的方法看起来有点幼稚,因为我刚刚开始学习c。我应该怎么做才能使程序正常运行

  • 我忘了提到我最初的成功是因为我的服务器是本地主机,而不是真正的“服务器”


您是否在服务器上运行了EXE文件?服务器有防火墙吗?您可以通过端口9000从客户端到服务器进行远程登录吗?需要明确的是,客户端和服务器都是EXE文件?您可能需要用新的端点配置这两个。另外,它抛出了什么样的错误?发布您的配置,托管代码…看起来类似于。。。。m_serviceHost=新的serviceHost(typeof(FirstWcfService.Service));m_serviceHost.Open();是的,我在服务器上运行了exe文件,客户端和服务器文件都是exe文件。我认为服务器没有防火墙。当我运行服务器exe时,控制台抛出了一大堆代码,在我可以读取任何代码之前,控制台冻结并自行关闭。
using (ServiceHost host = new ServiceHost(
            typeof(WcfServiceLibrary.WcfService)))
    {
        host.AddServiceEndpoint(typeof(
            WcfServiceLibrary.IWcfService),
            new NetTcpBinding(),
            "net.tcp://localhost:9000/MyWcfEndPoint");

        host.Open();
        Console.ReadLine();
    }