2016-03-07 82 views
1

我有一个模块内的公共类,并有一个持我的连接字符串像这样的变量:VB.NET声明新的SQL连接

Public ConnectionS As New SqlConnection("Data Source(LocalDB)\MSSQLLocalDB;AttachDbFilename=\MyDB.mdf;Integrated Security=True") 

上面的代码工作和正确保存我的连接字符串。然而,当我救我的连接字符串My.Settings.ConnectionS和使用下面的代码:

Public ConnectionS As New SqlConnection(My.Settings.ConnectionS) 

它不保存连接字符串。当我使用上面的第一个代码并将ConnectionS的值输出到文本框中时,我得到上面的确切连接字符串,但是当输出第二个代码的值时,我什么也没有(空白文本框)。我不明白为什么,因为我在我的应用程序设置中将连接字符串保存到My.Settings.ConnectionS。

+0

你如何将连接字符串保存到My.Settings? – Ageonix

+0

你是否试图输出这个,并确保它实际上存储在你的设置*** *** – Codexer

+0

我手动把它放到My.Settings.ConnectionS,它是输出时,我做textbox.text = My.settings.connections 。同样在设置中,ConnectionS变量被声明为用户范围和字符串。 – Quattro

回答

0

如果我正确理解你的问题,那么你没有以正确的方式保存连接。不是保存设置,而是实例化新设置,但从未实际将该值保存到用户设置。正确的方法来保存到My.Settings连接情况如下:

My.Settings.ConnectionS = New SqlConnection("Data Source(LocalDB)\MSSQLLocalDB;AttachDbFilename=\MyDB.mdf;Integrated Security=True") 
My.Settings.Save() 

此外,要确保你已经设置了连接与类型的SqlConnection的设置。 这里是更多关于保存用户设置的信息,如果你需要它:https://msdn.microsoft.com/en-us/library/fwc80dzb.aspx

+0

我不能将连接字符串保存到my.settings中的字符串吗?另外我正在尝试你给我的代码,我希望它解决了一切:D – Quattro

+0

是的,你也可以将它保存为一个字符串,并在需要时与保存的字符串建立连接。可能会更容易。 – Ageonix

+1

谢谢你我的方式,它的工作完美。我没有意识到你需要实际声明它为“New SqlConnection”,我认为你可以粘贴字符串。但它现在可以工作,这很好,谢谢。 – Quattro