簡體   English   中英

WCF並將代理代碼移動到DLL。可能嗎?

[英]WCF and moving the proxy code to a DLL. Is it possible?

看起來我無法成功地將我的WCF代理代碼移動到一個單獨的DLL中(與我在所有遇到的示例中都能看到的EXE相反)。

我試圖這樣做的原因是我希望我的代理代碼由不同的客戶端(可能是非托管代碼)調用,這可能對WCF一無所知,但只需要訪問服務(通過由代理可能?)。

每當我移動下面的代碼,在同一個解決方案中為另一個VS項目創建一個新代理時,我就會遇到可怕的“ 無法在ServiceModel客戶端配置部分中找到引用契約'localhost.IRemoteCommandService'的默認端點元素”異常

localhost.RemoteCommandServiceClient proxy = 
    new localhost.RemoteCommandServiceClient();

只要在代理代碼所在的同一項目中的Main方法中使用(從Visual Studio自動生成),相同的代碼就可以順利運行。

任何的想法? 我希望我的代理的客戶端代碼不需要將服務模型XML配置作為代理,因為這將破壞我首先將WCF代理代碼移動到DLL中的目的。

謝謝,斯特凡諾

通常在配置文件中指定端點。 您必須查看配置文件中的serviceModel數據,並將其復制到您的調用app.config中 - 或者您需要使用在代碼中創建代理的更詳細的方法(即通過代碼指定地址,綁定,配置等)到建設者)。

如果您不想在客戶端上進行端點配置,則必須通過在代碼中指定所有內容將其嵌入到代理dll中。

另一種選擇是使用動態代理,像這樣的一個 ,這樣可以讓你不必在你的客戶端應用程序的serviceModel。

暫無
暫無

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

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