vb.net 遇到的一个问题
“ System.Web.Services.Protocols.SoapException ”类型的未经处理的异常在 System.Web.Services.dll 中发生
其他信息: System.Web.Services.Protocols.SoapException: 服务器无法处理请求。 ---> System.Data.OleDb.OleDbException: IErrorInfo.GetDescription 因 E_FAIL(0x80004005) 而失败。
在 System.Data.OleDb.OleDbCommand.ExecuteCommandTextErrorHandling(OleDbHResult hr)
在 System.Data.OleDb.OleDbCommand.ExecuteCommandTextForSingleResult(tagDBPARAMS dbParams, Object& executeResult)
在 System.Data.OleDb.OleDbCommand.ExecuteCommandText(Object& executeResult)
在 System.Data.OleDb.OleDbCommand.ExecuteCommand(CommandBehavior behavior, Object& executeResult)
在 System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior behavior, String method)
在 System.Data.OleDb.OleDbCommand.ExecuteReader(CommandBehavior behavior)
在 System.Data.OleDb.OleDbCommand.System.Data.IDbCommand.ExecuteReader(CommandBehavior behavior)
在 System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
在 System.Data.Common.DbDataAdapter.Fill(DataTable[] dataTables, Int32 startRecord, Int32 maxRecords, IDbCommand command, CommandBehavior behavior)
在 System.Data.Common.DbDataAdapter.Fill(DataTable dataTable)
在 Service.getEmpInfo() 位置 E:\VB.NET\Restaurant\web\App_Code\Service.vb:行号 71
--- 内部异常堆栈跟踪的结尾 ---
这是错误,然后方法是在下面
<WebMethod()> _
Public Function getEmpInfo() As DataSet
cd.CommandText = "SELECT ID,EName,Sex,Age,IDCard,Position,Telephone,ShopID FROM Employee"
da.Fill(ds.Tables("Employee"))
Return ds
End Function
然后客户端是这样写
Public Class Manager
Dim ds As New DataSet
Dim ws As New localhost.Service()
Private Sub Manager_Load(sender As Object, e As EventArgs) Handles MyBase.Load
ds = ws.getEmpInfo
dgvInfo.DataSource = ds.Tables("Employee")
End Sub
End Class
问题是这样的,我在数据库执行按字段查询时候是没问题的,查询语句换成 select * from employee 也没问题,但是加上 id , ename 类似字段查询时候就会报这样的错,但是在数据库里面这样查询又不会错啊,数据库用的是 access ,已经确定是都连上去能用的了,因为其他 WebService 的方法都能正常使用