程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> ASP.NET基礎 >> asp.net(c#)動態修改webservice的地址和端口(動態修改配置文件)

asp.net(c#)動態修改webservice的地址和端口(動態修改配置文件)

編輯:ASP.NET基礎

這個問題其實並沒有我想像的那個復雜,我們都知道怎麼直接修改吧,那就是修改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本身就有修改的方式

本文出自: http://www.cckan.net 作者:蘇飛

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved