2017-04-05 82 views
4

我在添加服务参考到VS2017中的WPF项目时遇到了问题。该服务本身是使用EntityFramework(EntityFrameworkDataService)的WCF数据服务。在之前使用的VS2013中,我没有任何问题将服务添加到我的WPF项目中。我上个月升级到VS2017,最近对WCF服务做了一些更改,需要刷新我WPF项目中的参考。我似乎无法得到它刷新,所以我删除了参考,并开始尝试重新添加参考,现在我迎接这个错误信息:VS2017中WPF项目中的WCF数据服务参考

指定的OData API不能被添加,因为OData API仅支持连接服务,现在只有 。

欲了解更多信息,请访问: https://aka.ms/odatavsclientguidance

所提供的链接没有任何关于VS2017设置的任何信息。它建议使用“OData连接服务”扩展,但该扩展不支持VS2017(尝试它,但得到“不兼容”消息)。我还发现VS2017的'VS WCF连接服务'扩展,但它似乎不支持WPF项目(或者至少我无法弄清楚)。

有没有人遇到过这个问题,将WCF数据服务引用添加到WPF项目?任何其他建议,我可以尝试?

+0

你找到任何解决这个吗?我有同样的问题。 –

回答

2

由于TGRA雄辩地说明,对于VS2017在写作时最好的办法是使用dataserviceutil.exe。为了让事情为自己简单的我做了以下内容:

  1. 在文件管理器,使用如下的路径导航到datasvcutil.exe%windir%\Microsoft.NET\{{YOUR_PROCESSOR_ARCHITECTURE}}\{{YOUR_FRAMEWORKVERSION}}

  2. 保持shift并单击鼠标右键。选择Open Commandwindow here(或命令提示符下,如果你喜欢

  3. 现在执行datasvcutil.exe命令,像这样的C#:datasvcutil /language:Csharp /out:{{PATH_TO_PROJECT}}/{{SERVICE_NAME}}.cs /uri:{{URL_TO_SERVICE}}.svc

  4. OR像执行datasvcutil.exe命令,以便为Visual Basic:datasvcutil /language:VB /out:{{PATH_TO_PROJECT}}/{{SERVICE_NAME}}.VB /uri:{{URL_TO_SERVICE}}.svc

瞧,你就大功告成了。

+1

我给了TGRA的答案,因为它是相同的解决方案和第一个答案。但是多谢了一些额外的细节。 – Brian