2012-10-25 75 views
2

FedEx不提供UDDI服務,但需要作爲WSDL文件下載。開發完成後,開發WSDL需要被生產WSDL所取代。我正在使用Visual Studio 2008,只是更換WSDL不會自動在生產環境中工作,但需要重新導入並重建項目。這爲開發和生產環境創建了兩個不同的二進制簽名。我需要通過一些配置文件來完成此操作,以便我的二進制文件在開發和生產環境中保持一致。有任何想法嗎???謝謝!將FedEx .net Web服務從開發人員環境轉移到生產的最佳方式是什麼?

WSDL文件中唯一的變化是位置值。

<port name="RateServicePort" binding="ns:RateServiceSoapBinding"> 
     <s1:address location="https://ws.fedex.com:443/web-services" /> 
    </port> 
+0

您確定您不僅需要更改webservice的URL,而不是整個WSDL? – AlG

+0

你看過:http://stackoverflow.com/questions/5231582/how-do-you-modify-the-location-of-a-service-reference-at-runtime? – Styxxy

+0

我們把Web服務的URL放在配置文件中。當我們開始製作時,我們有一個配置文件和製作網址的副本。 –

回答

2

我們通常重寫URL,類似於戴夫齊赫是怎麼說的,沿着這些線路:

prod = new Service.Service(); 
// ... read configuration into cfg ... 
prod.Url = cfg.ServiceURL; 

的URL變化取決於通過配置環境。 WSDL與底層類一樣是一致的。

+0

當你說讀配置到cfg中,它是web.config/app.config文件嗎? – WinFXGuy

+0

這就是我總結的一點。我的意思是:從您的配置中加載URL並將其設置到URL成員中。你存放的地方取決於你。 – AlG

+0

謝謝!工作很棒! – WinFXGuy

相關問題