【发布时间】:2015-05-23 18:10:23
【问题描述】:
您好,我是 vb.net 的新手,我创建了一个表单,我需要至少调用 4 到 5 次连接。所以我写了4-5次连接字符串进行连接。但我知道我可以使用 app.config 文件来保存连接字符串。所以我尝试了下面的代码
app.config 文件
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
</configSections>
<connectionStrings>
<add name="ConString" connectionString="Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\kumar\Desktop\prodb.accdb;"/>
</connectionStrings>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
</configuration>
vb.net 形式
Imports System.Configuration
Public Class form1
Dim con As System.Data.OleDb.OleDbConnection
Dim cmd As System.Data.OleDb.OleDbCommand
Dim dr As System.Data.OleDb.OleDbDataReader
Dim sqlstr As String
Private Sub Button4_Click_1(sender As Object, e As EventArgs) Handles Button4.Click
Dim connectionString As String = ConfigurationManager.ConnectionStrings("ConString").ConnectionString
Try
con = New System.Data.OleDb.OleDbConnection("connectionString")
con.Open()
Dim ds As DataSet = New DataSet
Dim adapter As New OleDb.OleDbDataAdapter
Dim sql As String
Dim s As String
s = txtsearch.Text
sql = "select icode as `Item Code` , iname as `Name` ,irate as `Rate`,icomment as `Comment` from iteminfo "
adapter.SelectCommand = New OleDb.OleDbCommand(sql, con)
adapter.Fill(ds)
DataGridView1.DataSource = ds.Tables(0)
Catch ex As Exception
MsgBox("error found")
End Try
End Sub
但无法访问数据库。
我已添加参考system.configuration。
【问题讨论】:
-
将
connectionString去掉引号,因为它是con = New System.Data.OleDb.OleDbConnection("connectionString")中的一个变量 -
遇到此类问题时,不要使用通用的“发现错误”消息框吞下异常。改为显示您捕获的异常的详细信息 - 它可能会准确地指出问题所在。尽管@Chase 已经指出了一些绝对是个问题。
-
您是在
connectionString中传递连接字符串还是字符串“connectionString”本身。??删除 qoutes.its 变量吧?? -
感谢您的快速回复。通过删除引号解决
标签: .net vb.net app-config