2010-09-03 11 views
0

我只是想节省时间不是了解IIS和WAS,所以我做了一个控制台应用程序来托管我的WCF服务。但是,这让我不确定如何指定不是HTTP地址的端点地址。下面的配置可能是我的运行时错误的来源吗?异常描述为:无法找到与绑定WSHttpBinding的端点匹配方案http的基地址。注册的基地址方案是[]。WCF端点允许哪些非HTTP地址?

<system.serviceModel> 
<services> 
    <service name="WcfService1.Service1"> 
    <endpoint 
     contract="WcfService1.IService1" 
     binding="wsHttpBinding" 
     address="c:\users\owner\documents\visual studio 2010\projects\wcftest\wcfservice1\wcfservice1\service1.svc"/endpoint> 
    </service> 
</services> 

回答

1

你要找的字是bindings。您可以更改绑定属性以匹配支持所需协议的绑定。对于简单的控制台服务主机,我可能从netTcpBinding开始,它允许绑定到ipaddress:port组合。

实施例:

的net.tcp://本地主机:8000 /为MyService

+0

我从MSDN(大卫Chappell的)具有的示例显示为地址http://www.fabrikam.com/reservation /reserve.svc。但是,其他MSDN帮助似乎不使用.svc扩展名。这是因为一些例子过时了吗? – H2ONaCl 2010-09-03 01:21:58

+0

据我所知,这是因为当WCF第一次出来时,IIS 6是主要的宿主环境。由于默认情况下IIS 6不支持无扩展名的URL,因此添加了.svc,因此可以在IIS中映射扩展名。当通过TCP或任何其他绑定进行托管时,这不是必需的。 – Chris 2010-09-03 01:39:42