我用 vb.net 实现了一个网络服务
方法是这样的
Public Class WebService
Inherits System.Web.Services.WebService
<WebMethod()> _
Public Function INSERT_NEW(ByVal i As Integer, ByVal f As String) As String
Dim con As New OleDbConnection
Dim cmd As New OleDbCommand
Try
con.ConnectionString = ConfigurationManager.ConnectionStrings("WebConnectionSTR").ToString
'Dim strMdbPath As String = "C:\Users\Hossein\Documents\Visual Studio 2010\WebSites\WebSite1\"
'Dim strProvider As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="
'Dim strDBFile As String = "db.mdb"
cmd.Connection = con
cmd.CommandText = "insert into tb values (" & i & ",'" & f & "')"
con.Open()
cmd.ExecuteNonQuery()
con.Close()
Return "1"
Catch ex As Exception
con.Close()
Return "0"
End Try
End Function
End Class
如果我运行它并调用它,它就可以工作
但是当我创建一个 Windows 应用程序时,我遇到了一个未知问题,因为我在 web 方法中使用了 2 个(整数和字符串)输入参数作为输入参数,INSERT_NEW(byval i as integer,byval f as string) as string
它没有用
Imports wsdl.Myservice
Public Class Form1
Private Sub btnAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAdd.Click
Dim s As WebServiceSoap = New WebServiceSoapClient
lblAdd.Text = s.INSERT_NEW(txt1.Text, txt2.Text)
End Sub
End Class
但是当我将 web 方法中的输入参数更改为 INTEGER 时,它可以正常工作
在 Web 服务的 Web 方法中使用数据类型是否有限制,或者我做错了什么???
我添加了这 3 张照片,以向您展示我得到的确切错误。