在VS2017中的WPF项目中添加WCF数据服务引用

6
我在VS2017的WPF项目中添加服务引用时遇到了问题。该服务本身是使用EntityFramework(EntityFrameworkDataService)的WCF数据服务。在之前使用的VS2013中,我没有在WPF项目中添加服务时遇到任何问题。我上个月升级到了VS2017,并最近对WCF服务进行了一些更改,需要在我的WPF项目中刷新引用。我似乎无法使其刷新,因此删除了引用并开始尝试重新添加引用,但现在我看到了这个错误信息:
特定的OData API无法添加,因为现在仅支持使用Connected Services添加OData API。
有关详细信息,请参见:https://aka.ms/odatavsclientguidance 该链接提供的信息没有关于VS2017设置的信息。它建议使用“OData Connected Service”扩展程序,但该扩展程序不支持VS2017(我尝试了,但得到了“不兼容”的消息)。我还找到了适用于VS2017的“VS WCF Connected Service”扩展程序,但似乎不支持WPF项目(或者至少我无法弄清楚)。

有没有人在将WCF数据服务引用添加到WPF项目时遇到过这个问题?我能尝试的其他建议吗?


你找到解决办法了吗?我也遇到了同样的问题。 - maracuja-juice
2个回答

5

4
如TGRA所述,目前最好的选择是使用dataserviceutil.exe来处理VS2017。为了让事情更简单,我会按照以下步骤操作:
  1. 在文件资源管理器中,按照如下路径找到datasvcutil.exe%windir%\Microsoft.NET\{{YOUR_PROCESSOR_ARCHITECTURE}}\{{YOUR_FRAMEWORKVERSION}}

  2. 按住shift键并右键点击。选择在此处打开命令窗口(或者如果你愿意也可以选择命令提示符)。

  3. 现在执行一个类似于下面这样的C# datasvcutil.exe命令:datasvcutil /language:Csharp /out:{{PATH_TO_PROJECT}}/{{SERVICE_NAME}}.cs /uri:{{URL_TO_SERVICE}}.svc

  4. 或者执行一个类似于下面这样的Visual Basic datasvcutil.exe命令:datasvcutil /language:VB /out:{{PATH_TO_PROJECT}}/{{SERVICE_NAME}}.VB /uri:{{URL_TO_SERVICE}}.svc

大功告成!


1
我把答案给了TGRA,因为这是相同的解决方案并且是第一个回答的。但是感谢您提供额外的细节。 - Brian
1
生成此文件后,如何/在哪里使用它? - brijrajsinh

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接