你可以设置一个WCF服务参考而不会弄乱你的app.config吗?

时间:2011-07-11 21:30:29

标签: .net wcf web-services

我在IIS中托管了一个我需要引用的简单Web服务。如果我添加一个“服务参考”,我的app.config会被大量的<system.serviceModel>内容弄得乱七八糟。如果我将服务参考更改为旧样式 Web Reference ,我会在app.config中获得实际需要的唯一配置选项 - Web服务的URL

WCF服务参考的所有垃圾是否都会污染您的app.config?或者有没有办法让它使用合理的默认值并删除旧的ASMX Web服务日中从未需要的所有bindingsendpoints以及混乱。随着越来越多的服务被添加,这似乎会使.config文件变得笨拙。

3 个答案:

答案 0 :(得分:2)

  

WCF服务参考的所有垃圾是否都会根据需要污染您的app.config?

完全同意你的看法。纯垃圾。我使用svcutil.exe为我的WCF服务生成强类型客户端。然后我手动将生成的.cs文件包含到我的项目中,并在我的web / app.config中手动包含我认为必要的内容,而不是一些蹩脚的添加服务引用向导决定做什么。在大多数情况下,我需要的只是在客户端:

<system.serviceModel>
    <client>
      <endpoint
          address="http://example.com/fooservice/foo.svc"
          binding="basicHttpBinding"
          contract="IFooServiceConbtract" />
    </client>
</system.serviceModel>

当然对于我使用MTOM和一些花哨的东西的服务,我通过app.config命令查看自动生成的svcutil.exe文件,然后我决定我需要什么。

答案 1 :(得分:2)

.NET Framework版本4解决了这些问题,并为用户提供了一种减少服务配置大小和复杂性的方法。以下是Simplified Configuration

的链接

答案 2 :(得分:2)

使用DotNet Rocks TV查看Miguel Castro's Extreme WCF截屏视频 - 他准确显示了您正在寻找的内容,以及如何实现漂亮,干净的WCF配置(只要您不让Visual Studio和svcutil搞砸他们向上!)。