【问题标题】:Vb.Net setting connection in ModuleModule中的Vb.Net设置连接
【发布时间】:2016-10-21 16:53:29
【问题描述】:

我正在创建一个新的 Vb.Net 项目,并希望创建一个在项目运行时启动的模块,以便设置连接。我创建了一个名为 Connection 的新模块并将以下代码放在那里...

Imports System.Data.SqlClient
Module Connection
    Sub main()
        Dim sConnection As String = "Data Source=Van;Initial Catalog=OP;User ID=userid;Password=password"
    End Sub
End Module

现在我在我的 Form1 中添加了 SQLConnection 组件并尝试做这样的事情......

Using Con as New SQLConnection(sConnection)

'但这似乎不起作用。连接字符串可以正常工作,因为如果我将它包含在表单本身中,它就可以正常工作。

发生这种情况的任何特定原因?另外,假设我在应用中有 30 个表单,是否需要将 SqlConnection 组件添加到每个需要与数据库通信的表单?

【问题讨论】:

  • 摆脱 Sub Main 并将其声明为 Friend SQLConnStr As String = "Data Source=Van;Initial Catalog=OP;User ID=userid;Password=password" 注意:模块不会“启动”或运行,并且声明变量的位置决定了它的范围 - 您将只存在于该方法中. More about Scope ...我们在 NET (sConnection) 中不使用匈牙利符号

标签: vb.net module database-connection connection-string


【解决方案1】:

“Main()”是一个函数。 你声明了一个局部变量“sConnection”。

您的表单是另一个类。

一个类只能访问它的成员、全局成员或全局静态成员(或一些朋友场景,如 C++)。

从“Main”中取出该声明,在您的表单范围内声明或将其声明为您的表单可以访问的全局变量。

或者将您的连接字符串放入配置文件并从中读取。 (便于稍后配置。)

【讨论】:

  • 由于我可能需要在每个表单中与数据库通信,我是否必须在所有表单中添加 SqlConnection 组件?
  • 在 app.cpnfig 中写入连接字符串,并以各种形式从那里访问。这很容易。请参考以下链接。 stackoverflow.com/questions/15446175/…
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-05-07
  • 1970-01-01
  • 2012-08-01
相关资源
最近更新 更多