動態呼叫WebService

2021-05-22 09:24:41 字數 1784 閱讀 4434

public

static

object

invokewebservice(

string

url,  

string

methodname,

object

args)

其中,url是web服務的位址,methodname是要呼叫服務方法名,args是要呼叫web服務所需的引數,返回值就是web服務返回的結果了。

要實現這樣的功能,你需要這幾個方面的技能:反射、codedom、程式設計使用c#編譯器、webservice。在了解這些知識後,就可以容易的實現web服務的動態呼叫了:

#region

invokewebservice

//動態呼叫web服務

public

static

object

invokewebservice(

string

url,

string

methodname,

object

args)

public

static

object

invokewebservice(

string

url,  

string

classname,

string

methodname,

object

args)

try//

生成**例項,並呼叫方法

system.reflection.assembly assembly

=cr.compiledassembly;

type t

=assembly.gettype(@namespace+"

."+classname,

true

,true

);object

obj

=activator.createinstance(t);

system.reflection.methodinfo mi

=t.getmethod(methodname);

return

mi.invoke(obj,args);

}catch

(exception ex)

}private

static

string

getwsclassname(

string

wsurl)

#endregion

上面的注釋已經很好的說明了各**段的功能,下面給個例子看看,這個例子是通過訪問http://www.webservicex.net/globalweather.asmx 服務來獲取各大城市的天氣狀況。

動態呼叫webservice

protected string testservice string strurl,string methodname assembly asm assembly.loadfrom mytest.dll 載入前面生成的程式集 type t asm.gettype testwebservice.se...

動態呼叫WebService

1.大多數情況下,我們都是在vs裡面通過新增web引用的方式,在客戶端自動生成客戶端 去呼叫webservice的,有時候,伺服器端的位址可能會經常變,這裡就需要動態的呼叫webservice,一種是服務沒有變化只是ip位址變化了,這樣我們只需要在獲取客戶端 的時候,將其url位址修改即可。2.建立...

C 動態呼叫WebService

使用示例 trycatch exception ex 類檔案 using system using system.web using system.xml using system.collections using system.net using system.text using system...