動態呼叫WebService

2022-02-02 20:48:11 字數 1518 閱讀 2594

1.大多數情況下,我們都是在vs裡面通過新增web引用的方式,在客戶端自動生成客戶端**去呼叫webservice的,

有時候,伺服器端的位址可能會經常變,這裡就需要動態的呼叫webservice,

一種是服務沒有變化只是ip位址變化了,這樣我們只需要在獲取客戶端**的時候,將其url位址修改即可。

2.建立servicedescription描述物件

3.建立服務客戶端**

4.編譯客戶端**

5.反射呼叫服務方法。

這裡建立乙個測試用的webservice,裡面有乙個方法 sayhello().生成並發布,

原始碼如下:

webservice:

view code

using

system;

using

system.data;

using

system.web;

using

system.collections;

using

system.web.services;

using

system.web.services.protocols;

using

system.componentmodel;

namespace

testinvokewebserivce}}

client:

view code

using

system;

using

system.collections.generic;

using

system.text;

using

system.web;

using

system.net;

using

system.io;

using

system.web.services;

using

system.web.services.description;

using

system.xml.serialization;

using

system.codedom;

using

system.codedom.compiler;

using

system.reflection;

namespace

client

public

void invokemethod(string uri, string servicename, string methodname, string

parameters)

).tostring();

console.writeline(ss);

}results.errors.tostring();}}

}

效果圖:

動態呼叫WebService

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

動態呼叫webservice

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

C 動態呼叫WebService

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