Visual Studio 在“添加服务引用”时不生成 app.config 内容

Posted

技术标签:

【中文标题】Visual Studio 在“添加服务引用”时不生成 app.config 内容【英文标题】:Visual Studio does not generate app.config content when "add service reference" 【发布时间】:2011-01-10 16:10:54 【问题描述】:

当我在控制台应用程序中使用“添加服务引用”添加 Web 服务时,app.config 不会生成配置。如何使用特定的 wsdl 生成此 app.config?谢谢!

【问题讨论】:

您使用的是什么版本的 Visual Studio?我只是在一个空的控制台应用程序中自己尝试过,它正确生成了 app.config。 使用 VS2010 对我来说也发生了这种情况,针对 VS2010 生成的 WCF 服务。更感兴趣的是找到解决方案而不是解决方法。 增加了 150 个代表的赏金,以获取无需借助命令行即可解决问题的答案。 这在 VS 2013 中发生在我身上,Clara Onagers 解决方案奏效了。 【参考方案1】:

添加服务引用时,请尝试单击“高级...”按钮,然后取消选中“在引用的程序集中重用类型”复选框。

当我创建了一个简单的项目来测试一切正常的第三方服务时,我发现了这一点。尝试向主项目添加相同的引用会导致 app.config 和 reference.vb 文件无法正确生成。

我认为这可能是因为应用程序或引用的应用程序中已经存在其他 Web 引用,但是取消选中“重用类型”会导致文件正确生成。

【讨论】:

谢谢!一段时间以来一直在寻找解决方案,但您的回答解决了我的问题:-)【参考方案2】:

(与我在 Visual Studio 2010: adding a service reference to a 2008 generated wsdl 给出的答案相同)


我在使用 Visual Studio 2008 时遇到了同样的问题。我发现如果我使用“添加服务引用...”命令,或者深入挖掘“添加服务引用...”,我会得到不同的结果 | “进阶……” | “添加 Web 引用...”。

然而,行之有效的方法——以及对我有用的解决方案——仍然是通过命令行:

svcutil.exe /language:cs /out:GeneratedProxy.cs /config:app.config http://server/path_to/WebServiceBean?WSDL

这应该会给你一个工作的 app.config。希望对您有所帮助!

【讨论】:

【参考方案3】:

在我的情况下,以下操作已解决

    在 WCF 项目的 web.config 文件中注释了 <services> 标记(从 <services></services> 重新编译的 WCF 项目 在 IIS 上托管 在客户端应用程序中删除旧引用并再次添加 WCF 引用

它成功了:)

【讨论】:

【参考方案4】:

您可以像往常一样添加服务参考(无需高级)。如果配置部分没有出现在 app.config 中,您可以单击“配置服务引用...”,并取消选中“在引用的程序集中重用类型”。之后它将正确生成这些部分。

【讨论】:

【参考方案5】:

这不会自动生成你的设置,但是要在没有命令行的情况下创建 web.config 设置,你可以在添加服务引用后右键单击你的 app.config 并单击“编辑 WCF 配置”按钮添加您的网络服务所需的元素。

【讨论】:

以上是关于Visual Studio 在“添加服务引用”时不生成 app.config 内容的主要内容,如果未能解决你的问题,请参考以下文章

Visual Studio/SOAP -“添加服务引用”与“添加 Web 服务引用”

Visual Studio2012 添加服务引用时,生成基于任务操作不可用原因

WP7,将服务引用添加到Visual Studio 2010后如何使用它

Visual Studio 2015无法添加服务参考

Visual Studio 2010 SOAP 服务引用仅返回空值

Visual Studio 2015 添加服务参考