使用Ajax自动完成扩展程序从MS SQL DB获取数据

时间:2016-10-31 19:54:12

标签: web-services connection-string

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

我认为我的问题在于我在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

1 个答案:

答案 0 :(得分:0)

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

所以我用OldDb替换了所有Sqlclient,它立即解决了问题。事实证明,在尝试建立连接之前,了解要连接的数据库类型非常重要。