人。我对Silverlight和WCF都很陌生。我要做的是提供与Silverlight对象的数据库连接。但是,我遇到的问题是,我的网络服务虽然编译得很好,但似乎根本没有返回任何内容。我已经使用了Fiddler,并尝试了一个自定义请求,但服务本身并没有返回任何内容。
我的服务代码:
Imports System.ServiceModel
Imports System.ServiceModel.Activation
Imports System.Data.OleDb
Imports System.Runtime.Serialization
<ServiceContract(Namespace:="")> _
<AspNetCompatibilityRequirements(RequirementsMode := AspNetCompatibilityRequirementsMode.Allowed)> _
Public Class DBConnection
Dim dbConn As OleDbConnection
Private Function OpenConnection(ByVal strConnection As String) As Boolean
Try
Dim blnConnected As Boolean = False
dbConn = New OleDbConnection(strConnection)
dbConn.Open()
Catch ex As OleDbException
Return False
End Try
Return True
End Function
Private Function CloseConnection() As Boolean
Try
dbConn.Close()
dbConn = Nothing
Catch ex As OleDbException
Return False
End Try
Return True
End Function
<OperationContract()> _
Public Function GetDataTable(ByVal strSQL As String, ByVal strConnection As String) As DataTable
If dbConn Is Nothing Then OpenConnection(strConnection)
Dim dtTable As New DataTable
Dim dbAdapter As New OleDbDataAdapter(strSQL, dbConn)
dbAdapter.Fill(dtTable)
CloseConnection()
Return dtTable
End Function
End Class
当我在GetDataTable的最后一行断点时,那里有ARE结果。而且我也知道这也是因为这一点。
很明显,我做错了什么,但我完全不知道是什么。
答案 0 :(得分:1)
如果你看到
,你必须在Fiddler中得到一些东西“远程服务器返回错误:NotFound”错误。
至少有HTTP错误代码吗?
-----更新了
使用DataSet而不是DataTable作为返回类型。在返回之前将表放在DataSet中并抓住第一个表。