背景:我有一個WCF項目正在使用Microsoft企業庫WCF異常處理。WCF企業庫ExceptionHandling在其他項目中的faultcontracttype時失敗
我們最近決定將我們的操作和數據契約移動到一個名爲comanynamespace.xxx.WCF.Utilities的單獨項目(.net程序集)中。移動操作和數據合約後,我更改了faultContractType命名空間以反映新的程序集。
現在,當我在VS2010啓動Web服務,我得到以下錯誤:嘗試獲取類型ExceptionPolicyImpl,我已經試過鍵「WCF異常屏蔽」
的情況下發生
激活錯誤:確保這兩個項目中都存在相同的參考文獻,並確保兩個項目都在.net 4(無客戶端模式)下運行,等等都沒有幫助解決問題。
最後,我複製了服務故障類回Web服務項目,改變了命名空間在web.config指向回本地命名空間: 來自:
faultContractType="comanynamespace.xxx.WCF.Utilities.ServiceFault, comanynamespace.xxx.WCF.Utilities.Services"
到:
faultContractType="comanynamespace.xxx.Web.Services.ServiceFault, comanynamespace.xxx.Web.Services"
這確實可以解決錯誤,但是,現在我必須在兩個位置都有我的服務故障數據合同。
有誰知道爲什麼我無法使用Microsoft EL WCF異常處理在另一個.net程序集中使用服務故障(數據協定)?
在頂部,你說你的項目是「xxx.Utilities」,但在你的配置中你把它稱爲「xxx.WCF.Utilities」。這是一個錯字還是可能是問題? –
邁克,這是一個錯字,但如果你看看我的解決方案下面你的猜測關於命名空間是正確的,爲什麼激活錯誤發生。謝謝! – jreed350z