我正在构建一个分布式应用程序,需要6个不同的服务。我将不得不使用Visual Studio2008在我的XP笔记本电脑上演示该应用程序。
是否可以在本地主机上同时运行多个服务,所有服务都使用net.pipe?
例如:
net.pipe://localhost/DirectoryService
net.pipe://localhost/MathService如果没有,有没有其他方法可以不使用IIS/webdev服务器来托管这些WCF服务?net.tcp?还有别的吗?
发布于 2009-04-15 01:14:29
可以,前提是绑定地址是唯一的。您所展示的两个示例将很好地与net.pipe绑定一起工作。
请记住,net.pipe绑定只能在本地计算机上工作。如果您希望可以从远程计算机访问您的服务,则需要使用不同的绑定,例如net.tcp。也就是说,如果您的服务在本地主机上运行,那么net.pipe是推荐使用的绑定,因为它比其他绑定更有效。
发布于 2009-04-15 15:34:43
关于net.pipe地址,您应该知道的另一件事是您提供的是URN,而不是URL。net.pipe是内存中的实现,您指定的“地址”可以是任何值。
net.pipe://IHateCats
net.pipe://NamedPipes/Are/Fast无论其他因素如何,这些都会起作用。它只是该命名管道的唯一标识符。这种形式的通信不涉及网络堆栈。
发布于 2009-04-14 23:58:05
您可以在没有IIS的情况下使用HTTP作为服务端点,看看ServiceHost类。这就是我使用的本地WCF测试,它工作得很好。
https://stackoverflow.com/questions/749756
复制相似问题