2013-09-29 39 views
0

我正在经历新的WCF 4.5功能http://msdn.microsoft.com/en-us/library/dd456789.aspx并尝试简化生成的配置文件。当我在4.0和4.5中生成配置文件时,它们都是相同的。他们没有默认值。WCF简化配置4.5新功能?

我失去了一些东西?

+0

根据该链路,这些值被发射的配置文件中,只有当他们不等于默认值。你可以发布一个4.0和4.5文件的例子,你认为这些文件不会在行动中表现出来吗? – Tim

+0

你可以编辑你的问题并在那里发布代码。 – Tim

+0

我刚刚在4.0和4.5中创建了一个默认的WCF项目,并在控制台应用程序中表示添加引用。我总是以如下方式结束。由于字符限制,无法发布完整的代码。 <端点地址= “HTTP://本地主机:36275/Service1.svc” 结合= “basicHttpBinding的” bindingConfiguration = “BasicHttpBinding_IService1” 合同= “ServiceReference1.IService1” 名称= “BasicHttpBinding_IService1”/> –

回答

1

虽然我在4.0 vs 4.5上找不到任何东西特别是,但是您引用的链接首先显示了一个配置文件3.0和4.5。

从4.0开始,引入了简化的配置文件,其中包含默认绑定和默认端点的概念 - 这意味着您可以在4.0或4.5中创建开箱即用的WCF服务应用程序,并且不会有绑定或定义的端点 - 您可以通过查看4.0和4.5服务的web.config文件来验证这一点。

当您添加服务引用,你最有可能使用的“http://” URI - 默认情况下,“HTTP”映射到basicHttpBinding。因此,让我们来看看你在评论中发表的片段:

<endpoint address="localhost:36275/Service1.svc" 
      binding="basicHttpBinding" 
      bindingConfiguration="BasicHttpBinding_IService1" 
      contract="ServiceReference1.IService1" 
      name="BasicHttpBinding_IService1" /> 

一切客户需要与服务进行通信有 - 地址,绑定使用,绑定配置使用和合同。

如果您在客户端配置文件,您应该看到以下还有:

<bindings> 
    <basicHttpBinding> 
    <binding name="BasicHttpBinding_IService1" /> 
    </basicHttpBinding> 
</bindings> 

其对应于端点的bindingConfiguration属性指定的绑定。由于正在使用默认值,因此未指定绑定的其他属性。

在3.0和3.5,装订部将不得不使用默认值指定绑定的所有属性 - 在4.0和更高版本没有。

您不会错过任何东西 - 比文档是有点误导,因为它意味着这是一个4.5的功能,当它实际上它是一个4.0和4.5的功能等。

+0

谢谢@tim我认为这是一个4.0的功能,它刚刚在4.5中被强调(或者可能在市场上销售)。 –