C 不新增引用,動態呼叫webservice

2021-06-02 05:11:53 字數 924 閱讀 1380

好像很多人做webservice的時候都是直接新增引用的方式,然後呼叫服務端的方法。這樣就個問題,就是每次我服務端新增了方法或者修改了方法後都要更新web引用,這樣比較麻煩。下面給乙個不用新增引用的方式呼叫服務端的方法.只是乙個簡單的測試,不是很規範,用得著的人可以自己封裝一下,然後直接傳服務端的方法名進去,type.getmethod獲取方法,然後method.invoke返回結果。

高手些多多包函,主要是給用得著的人參考一下,互相學習.**主要是用了 system.web.services.description裡的東西

public static object invokemethod(string namespace, string classname, string methodname, object param)

system.reflection.assembly asm = system.reflection.assembly.loadfrom("tempclass.dll");//載入前面生成的程式集

type t = asm.gettype(namespace + "." + classname);

object o = activator.createinstance(t);

system.reflection.methodinfo method = t.getmethod(methodname);//getpersons是服務端的方法名稱,你想呼叫服務端的什麼方法都可以在這裡改,最好封裝一下

object item = method.invoke(o, param);

//注:method.invoke(o, null)返回的是乙個object,如果你服務端返回的是dataset,這裡也是用(dataset)method.invoke(o, null)轉一下就行了

return item;

}

C 中呼叫Execl,新增相關引用

新增引用 追加 com 如果是excel 2000 新增 mirosoft excel9.0 object library 如果是excel 2003 新增 mirosoft excel11.0 object library 在程式中呼叫 ps 如果有問題可以看看下面的 安裝了乙個vstor.exe...

C 引用呼叫

向函式傳遞引數的引用呼叫方法,把引數的位址複製給形式引數。在函式內,該引用用於訪問呼叫中要用到的實際引數。這意味著,修改形式引數會影響實際引數。按引用傳遞值,引數引用被傳遞給函式,就像傳遞其他值給函式一樣。因此相應地,在下面的函式swap 中,您需要宣告函式引數為引用型別,該函式用於交換引數所指向的...

C 引用呼叫

向函式傳遞引數的引用呼叫方法,把引用的位址複製給形式引數。在函式內,該引用用於訪問呼叫中要用到的實際引數。這意味著,修改形式引數會影響實際引數。按引用傳遞值,引數引用被傳遞給函式,就像傳遞其他值給函式一樣。因此相應地,在下面的函式 swap 中,您需要宣告函式引數為引用型別,該函式用於交換引數所指向...