c# 動態修改webservice的地址和端口


靜態修改方式 ------------------------------------ 這個問題其實並沒有我想像的那個復雜,我們都知道怎么直接修改吧,那就是修改WebConfig文件的配置節 具體的方法看下面圖片

這個相信很多人都知道,直接修改就行了 動態修改方式 ---------------------------------------------------------- 那么怎么動態修改呢? 我想可能很多人都會這樣講,修改WebConfig文件,有專用的幫助類,也可以自己寫因為WebConfig是可以Xml的形來編輯的,對的這種方法確實是可行的 那么我告訴你們,你們錯了,有更簡單而且更適合的方法 方法如下 大家使用Webservice的第一步應該是創建對象吧 是不是這樣,看下面代碼

//Web服務對象
    WebReference.Service1SoapClient objService = new WebReference.Service1SoapClient();

如果你細心一點的話,右建這個構造方法查看一下轉到定義試試

這是轉到定義之后最上面的五個方法大家來看一下吧

對就是有這樣五個自動生成的方法

復制代碼
public Service1SoapClient();
        public Service1SoapClient(string endpointConfigurationName);
        public Service1SoapClient(Binding binding, EndpointAddress remoteAddress);
        public Service1SoapClient(string endpointConfigurationName, EndpointAddress remoteAddress);
        public Service1SoapClient(string endpointConfigurationName, string remoteAddress);
復制代碼

大家一起看一下第四個方法和第五個方法 我解釋一下

復制代碼
//endpointConfigurationName 配置節的名稱,remoteAddress配置節對象
        public Service1SoapClient(string endpointConfigurationName, EndpointAddress remoteAddress);
        //endpointConfigurationName 配置節的名稱,remoteAddress配置節URL
        public Service1SoapClient(string endpointConfigurationName, string remoteAddress);
        //設置其它參數
復制代碼

對就是這兩個方法,我們只要修改第五個就行了, 使用方法如下

 

//Web服務對象
    WebReference.Service1SoapClient objService = new WebReference.Service1SoapClient("Service1Soap","你要修改的URL例如:http://www.cckan.net/webservices.asmx");

 

問題解決了,我們只要動態配置一下這個參數就行了,具體方法相信大家都會了,存儲在數據庫或者別的地方都是可以的。 不要再傻者去搞配置文件了,webservice本身就有修改的方式


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM