当我在Visual Studio中创建一个新的“WCF服务应用程序”并右键单击Service1.svc时,我可以选择“在浏览器中查看”。 Web浏览器出现,显示http://localhost:50311/Service1.svc,它说“您已经创建了一项服务。”这怎么发生的?
Service1 Service
You have created a service.
To test this service, you will need to create a client and use it to call the service. You can do this using the svcutil.exe tool from the command line with the following syntax:
svcutil.exe http://localhost:50311/Service1.svc?wsdl
...
服务在某种程度上似乎绑到Visual Studio本身,因为该网页将无法访问,如果我关闭该解决方案。这是怎么回事?我没有安装网络服务器,并且我没有(明知)启动服务。显示的网页的来源是什么,为什么它在50311端口上?该页面可以自定义吗?
这听起来像VS做了什么你告诉它做的事。也许你可以描述你想要做什么,有人可能会建议如何到达那里。 –
主要是我只想了解发生了什么。如果我用Ctrl + F5运行,我得到一个自称为“ASP.NET Development Server 9.0.0.0”的Web服务器的根目录。我甚至没有意识到WCF服务通常在Web服务器中运行,并且我不知道VS是否带有Web服务器,尽管当我想到它时很明显(否则它将如何支持ASP.NET无法使用的服务器)这只是我以前从未使用ASP.NET而已。) – Qwertie
我的实际目标是在Windows服务中创建一个服务器,以便与同一台计算机或另一台计算机上的客户端进程进行通信。通信协议是不重要的,除了我想最大限度地减少消息的大小,以防通信链路速度慢,并且我需要支持从服务器到客户端的“推送”消息。除了作为Windows服务运行外,它还应该能够作为独立的可执行文件运行。 – Qwertie