2012-11-28 55 views
1

我有一個C#庫,需要引用2個Web服務,一個在站點處於「Stage」時,然後在「Production」時指向另一個。如何爲Web服務設置不同的URL?我注意到URL是在.disco文件中硬編碼的。有沒有辦法做到這一點動力設置?我也試過這個解決方案:Webservice應用程序設置

App.Config Transformation for projects which are not Web Projects in Visual Studio 2010?

但由於某些原因,當我編譯我的網站,該庫被編譯,但應用程序配置不被複制到bin文件夾。所以我假設我的Web服務URLs在庫dll中被硬編碼。任何幫助是極大的讚賞。

感謝

+0

你的c#庫使用什麼.net框架? –

+0

您可以將此添加到網絡或app.config文件,設置或編寫代碼來確定您正在運行哪個域,並根據域從配置文件讀取該值。你現在如何在同一個項目中同時使用多個Web服務?你有一個App_WebReferences文件夾嗎?這是您可以添加/使用多個Web服務的位置,如果您通過IDE執行它,它將知道差異我將右鍵單擊app_WebReferences文件夾並以不同的方式命名Web服務,然後添加它應添加 – MethodMan

回答

1

可能需要一點點更多的信息,但這裏是我可以告訴你早就:

你可以隨時將您的服務器(主機),以「獻」兩個不同的端點完全一樣的服務,那可以使用WCF配置選項從Visual Studio進行配置。

如果您的意思是「指向」具有相同Web服務定義的不同URL,那麼您只需要實例化添加Web引用時創建的代理,並在構造函數中提供其他URL在生產中使用。

您的網絡配置通常被複制到您的bin文件夾,也許您應該檢查您的部署安裝過程。或者嘗試自己添加它。

+0

Thx - 我有更改構造函數以使用Web配置 - – PhillyNJ

1

你說,你編譯「網站」,暗示你有被引用的類庫項目在您的Web服務的引用是一個網站項目。

如果是,網站將會有一個web.config文件 - 對其進行轉換,而不是類庫項目中的app.config。