我有一個Silverlight應用程序通過WCF服務與服務器端進行通信。最初,我擁有主要Silverlight應用程序中的所有內容,但現在我想將我們的一些類分解爲單獨的Silverlight類庫項目。然而,這給了我一些奇怪的問題...Silverlight類庫中的WCF服務參考
我想將WCF通信的類別分解到單獨的項目。所以我:
- 創建一個新項目; Silverlight類庫
- 將我的Silverlight應用程序中的類移至我的Silverlight類庫
- 由於我不再從應用程序調用該應用程序,因此刪除了應用程序中的服務引用。
- 從類庫項目中添加了一個服務引用。
現在 - 編譯很好,我得到了類庫中的服務東西的智能感知,所以它似乎很好。我還更新了服務並獲得了類庫中的更新。 但運行做一個服務調用給出以下錯誤,當它失敗的應用程序時:
InvalidOperationException異常是由用戶代碼未處理
找不到引用合同「MyServiceReference.IMyService」在默認終結點元素ServiceModel客戶端配置部分。這可能是因爲沒有找到適用於您的應用程序的配置文件,或者因爲在客戶端元素中找不到匹配此合同的端點元素。
好像找不到服務,但爲什麼?我認爲從Silverlight類庫中獲取服務引用應該沒有問題,因爲它允許我添加一個?
Thx - 解決了它!通過複製類庫項目中的ServiceReferences.ClientConfig內容或在應用程序項目中添加相同的服務引用來解決。所以我認爲它是應用程序本身將處理服務請求,即使它是在其他地方定義的?但是,這感覺有點hacky ..是否可以在類庫項目中使用服務引用? – stiank81 2009-08-11 09:48:49
哦,當然 - 我想說,在類庫中提供服務引用是非常實用的。只要記住把他們的配置放在主應用程序 - 這就是全部:-) – 2009-08-11 10:32:03
好:-) Thx的答案! – stiank81 2009-08-11 11:02:06