.net 在VS 2010扩展中使用WCF服务

.net 在VS 2010扩展中使用WCF服务,.net,wcf,visual-studio-2010,.net,Wcf,Visual Studio 2010,我正在使用VisualStudio2010SDK SP1开发VS2010扩展,该扩展旨在使用WCF服务。扩展是一个停靠在IDE中的工具窗口,提供与数据库对象和服务操作的接口,我可以将其与代码集成。我已在解决方案的其他地方连接到该服务,没有任何问题 这个问题似乎是由于VS扩展没有一个App.config文件可以用来存储服务配置。我知道可以通过编程方式定义服务并使用它,但这需要对现有的网络代码进行大量重写。调试扩展时收到的异常消息是: 找不到引用协定“IDataServerService”的默认终结

我正在使用VisualStudio2010SDK SP1开发VS2010扩展,该扩展旨在使用WCF服务。扩展是一个停靠在IDE中的工具窗口,提供与数据库对象和服务操作的接口,我可以将其与代码集成。我已在解决方案的其他地方连接到该服务,没有任何问题

这个问题似乎是由于VS扩展没有一个App.config文件可以用来存储服务配置。我知道可以通过编程方式定义服务并使用它,但这需要对现有的网络代码进行大量重写。调试扩展时收到的异常消息是:

找不到引用协定“IDataServerService”的默认终结点元素 在ServiceModel客户端配置部分中。这可能是因为没有 找不到应用程序的配置文件,或者因为没有端点元素 在client元素中可以找到与此合同匹配的内容

有没有办法让VS扩展从配置文件读取WCF服务配置,而不是通过编程方式定义客户端代理


谢谢您的帮助。

您可以尝试将您的服务配置添加到Visual Studio的配置文件中:
devenv.exe.config
默认位于
%VSINSTALLDIR%\Common7\IDE
如果您不想编辑devenv.exe.config文件,我认为最好的方法是以编程方式执行。

我已经考虑过这一点选项,但没有尝试它。这个方法确实有效,但我希望我不必直接编辑VS配置文件。是否可以包含单独的配置作为外部引用?WCF不必从应用程序/AppDomain的主配置加载配置。如果您不想使用VS config进行操作,您应该将配置窗口添加到扩展中,并从代码中对其进行配置。谢谢你的帮助!:)