簡體   English   中英

WCF reference.cs突然不包括類

[英]WCF reference.cs suddenly not including classes

我已經開發了一個WCF服務,它已經運行了幾個星期了。 我直接從開發服務器將此服務發布到IIS。 我有一個開發測試應用程序,在自己的項目中包含此WCF服務作為服務引用。

我的WCF類庫還引用了Visual Studio解決方案中的另一個項目,並且許多類位於引用的項目中,服務和調用應用程序使用這些類。

今天,在發布對服務的一些更改之后(我沒有對引用的項目或其類進行任何更改),引用項目中大約20個類中的三個不再位於我的測試應用程序的服務引用中。 我不能再在代碼中使用它們了,它們不再在Reference.cs中。 我仔細檢查過,所討論的類仍然使用[DataContract]進行修飾,並且屬性仍然在服務解決方案中使用[DataMember]進行修飾。

一切都在Visual Studio中構建好了。我已經重建並重新發布了所有內容,缺少的類設置為編譯,我已經嘗試過IIS重置,完全刪除了IIS站點並做了干凈的重新發布,無濟於事。 我已經嘗試刪除測試應用程序上的服務引用,並且每次都獲得一個干凈的代理。 什么都行不通。

然后我嘗試在引用的項目中創建一個虛擬類並構建它。再次重新發布服務,甚至這個虛擬類也沒有出現在Reference.cs中。 我完全不知道為什么這些類在發布之后沒有被包含在引用項目的.dll中,因為很明顯一切都在Visual Studio中構建好了。

我遇到這樣的問題。 以下步驟可幫助您1.右鍵單擊服務(項目的服務參考部分)2。在更新服務參考中單擊高級3.執行附加圖像。 在此輸入圖像描述

想回來發布造成我問題的原因:

我做了更改,我的服務方法都沒有使用3個“缺失”類作為返回類型或參數。 我只需要取消注釋使用這些類的方法,使它們再次可用。 現在有道理,但我確信其他事情是錯的。

我遇到了類似的問題並通過以下方式解決了這個問題。

使用mexHttpsBinding添加終點的地址。 例如,讓我們將地址視為mex

在服務URL末尾配置服務引用append / mex時。

https://service.domain.com/serivce1.svc/mex

這將啟用元數據交換 因此,將修改/添加Reference.cs(如果您是第一次添加服務引用)。

請確保您的服務具有mexHttpBinding / mexHttpsBinding的終點

編輯 :在分析中,我發現當通過兩個以上的端點(包括mex端點)公開服務時會發生此問題

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM