【问题标题】:using app.config for connecting string in vb.net 2012 for ms access使用 app.config 在 vb.net 2012 中连接字符串以进行 ms 访问
【发布时间】: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


【解决方案1】:

在这一行中,只需将“connectionString”替换为 connectionString con = New System.Data.OleDb.OleDbConnection("connectionString")

只需删除引号即可解决您的问题...

【讨论】:

    猜你喜欢
    • 2013-03-04
    • 2016-05-11
    • 1970-01-01
    • 2012-01-18
    • 2013-06-13
    • 1970-01-01
    • 2011-05-06
    • 2013-02-01
    • 1970-01-01
    相关资源
    最近更新 更多