使用 Ajax 自动完成扩展器从 MS SQL 数据库获取数据

Fetch Data From MS SQL DB Using Ajax Auto Complete extender

我有一个 .aspx 页面调用 .asmx web 方法从 MS SQL 数据库中提取数据。我已经在没有连接字符串的情况下测试了结果并且它有效。

我认为我的问题出在 web.config 中的连接字符串,但我不确定如何设置它。当我尝试使用 SQL 命令进行 运行 搜索时,我要么收到 500 服务器错误,要么什么也没有。有人可以提供一些建议吗?

部分web.config

<connectionStrings>
<add name="myConn" connectionString="Data Source=D:\root\Database\; Initial Catalog=myData.mdb;Integrated Security=sspi;" />
</connectionStrings>

网络方法

Dim customers As List(Of String) = New List(Of String)

Dim conn As System.Data.SqlClient.SqlConnection = New System.Data.SqlClient.SqlConnection
conn.ConnectionString = ConfigurationManager.ConnectionStrings("myConn").ConnectionString
Dim cmd As System.Data.SqlClient.SqlCommand = New System.Data.SqlClient.SqlCommand

cmd.CommandText = "SELECT col1, col2 from myTable where" &
   " , like @SearchText + '%'"
cmd.Parameters.AddWithValue("@SearchText", prefixText)
cmd.Connection = conn
conn.Open()

Dim sdr As System.Data.SqlClient.SqlDataReader = cmd.ExecuteReader
While sdr.Read
    Dim item As String = AjaxControlToolkit.AutoCompleteExtender.CreateAutoCompleteItem(sdr("col1").ToString, sdr("col2").ToString)
    customers.Add(item)
End While

conn.Close()

Return customers

好的,因为我试图连接到 Access 数据库,所以我想使用 OleDB 连接而不是 SqlClient。

所以我把所有的Sqlclient都换成了OldDb,很快就解决了问题。所以事实证明,在尝试建立连接之前了解要连接的数据库类型非常重要。