vb.net调用webService源码
来源:互联网 发布:电脑k歌软件 编辑:程序博客网 时间:2024/05/18 02:49
Imports System.CodeDomImports System.CodeDom.CompilerImports System.Security.PermissionsImports System.Web.Services.DescriptionImports System.ReflectionPublic Class DynamicWebService Public Function CallWebService(ByVal webServiceAsmxUrl As String, _ ByVal serviceName As String, ByVal methodName As String, _ ByVal args() As Object) As Object Try Dim client As System.Net.WebClient = New System.Net.WebClient() '-Connect To the web service Dim stream As System.IO.Stream = _ client.OpenRead(webServiceAsmxUrl + "?wsdl") 'Read the WSDL file describing a service. Dim description As ServiceDescription = ServiceDescription.Read(stream) 'LOAD THE DOM''''''''''''''''''''''''''' '--Initialize a service description importer. Dim importer As ServiceDescriptionImporter = New ServiceDescriptionImporter() importer.ProtocolName = "Soap12" ' Use SOAP 1.2. importer.AddServiceDescription(description, Nothing, Nothing) '--Generate a proxy client. importer.Style = ServiceDescriptionImportStyle.Client '--Generate properties to represent primitive values. importer.CodeGenerationOptions = _ System.Xml.Serialization.CodeGenerationOptions.GenerateProperties 'Initialize a Code-DOM tree into which we will import the service. Dim nmspace As CodeNamespace = New CodeNamespace() Dim unit1 As CodeCompileUnit = New CodeCompileUnit() unit1.Namespaces.Add(nmspace) 'Import the service into the Code-DOM tree. 'This creates proxy code that uses the service. Dim warning As ServiceDescriptionImportWarnings = _ importer.Import(nmspace, unit1) If warning = 0 Then '--Generate the proxy code Dim provider1 As CodeDomProvider = _ CodeDomProvider.CreateProvider("VB") '--Compile the assembly proxy with the // appropriate references Dim assemblyReferences() As String assemblyReferences = New String() {"System.dll", _ "System.Web.Services.dll", "System.Web.dll", _ "System.Xml.dll", "System.Data.dll"} Dim parms As CompilerParameters = New CompilerParameters(assemblyReferences) parms.GenerateInMemory = True '(Thanks for this line nikolas) Dim results As CompilerResults = provider1.CompileAssemblyFromDom(parms, unit1) '-Check For Errors If results.Errors.Count > 0 Then Dim oops As CompilerError For Each oops In results.Errors System.Diagnostics.Debug.WriteLine("========Compiler error============") System.Diagnostics.Debug.WriteLine(oops.ErrorText) Next Throw New System.Exception("Compile Error Occurred calling webservice.") End If '--Finally, Invoke the web service method Dim wsvcClass As Object = results.CompiledAssembly.CreateInstance(serviceName) Dim mi As MethodInfo = wsvcClass.GetType().GetMethod(methodName) Return mi.Invoke(wsvcClass, args) Else Return Nothing End If Catch ex As Exception Throw ex End Try End FunctionEnd Class
调用:
Imports System.NetPublic Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim WebserviceUrl As String = "http://192.168.100.100:9091/esbbusservice.asmx" 'specify service name Dim serviceName As String = "EsbBusService" 'specify method name to be called Dim methodName As String = "Process" 'Arguments passed to the method Dim objCallWS As New DynamicWebService Dim sSessionID = objCallWS.CallWebService(WebserviceUrl, serviceName, methodName, {txtInput.Text}) TextBox1.Text = sSessionID End SubEnd Class
- vb.net调用webService源码
- [VB.NET源码]webservice的好实例
- webservice系列教学(8)-如何调用webservice(vb.net)
- 用VB调用Webservice
- 用VB调用Webservice
- vb调用webservice(二)
- vb调用WebService
- 转: .Net,ASP,VB调用webservice的示例
- 转: 用VB调用Webservice
- 用VB调用Webservice(一)
- 关于VB 6.0 调用WebService
- [VB.NET源码] 人事管理系统
- [VB.NET源码]人事管理系统
- ASP调用.net webservice
- asp.net调用WebService
- Asp.net调用webservice
- .net 动态调用webService
- .Net 动态调用WebService
- C++虚函数
- LiteCoin
- centos 下安装jdk7报错,error: unpacking of archive failed on file /usr/java/jdk1.7.0_21/jre/lib/amd64/libj
- Oracle--重建一个新的表空间目录
- java UUID生成
- vb.net调用webService源码
- Win7 IIS配置及发布网站
- Inside The C++ Object Model(一)关于对象
- Spring MVC拦截器实现分析
- Ubuntu Unity 桌面图标消失
- ubuntu小结
- Inside The C++ Object Model(二)构造函数语意学
- Java Sax解析XML文件
- Inside The C++ Object Model(三)Data语意学