2017-04-05 113 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