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...