使用web.config(asp.net,vb)来保存数据库连接字符串

时间:2014-04-01 15:48:16

标签: asp.net vb.net web-config connection-string

我正在使用asp.net和VB编写Web工具。我的客户已经指示我使用web.config文件来保存数据库连接字符串(而不是使用我迄今为止一直在做的全局变量)。

大多数在线帮助都同意如何执行此操作,但存在细微差别。 web.config文件:

<configuration>
  <connectionStrings>
     <add name="MyConn"
         connectionString="Provider=SQLOLEDB;Data Source=MyServer;
             Initial Catalog=DBName;Persist Security Info=True;User ID=MyUser;
             Password=MyPass"
         providerName="System.Data.SqlClient" />
  </connectionStrings>
</configuration>

在我的代码隐藏页面中:

Imports System.Configuration
Dim conn as String

conn = 
ConfigurationManager.ConnectionStrings["MyConn"].ConnectionStrings

我看过的论坛都认为这应该适用于vb或C#。但在我的代码隐藏中,我得到了错误&#34;类型的值&#39; System.Configuration.ConnectionStringSettingsCollection&#39;无法转换为&#39; String&#39;。&#34;如果我将连接字符串更改为对象:

Dim conn as object

然后错误消失了,但我不认为解决了这个问题。任何人都可以告诉我为什么上面的代码不能在我的web.config文件中呈现字符串?根据多个论坛,这应该有效。

感谢您的帮助。

编辑:

我确实尝试使用&#39; ConnectionString&#39;来结束这一行。 (最终&#39; s&#39;删除),这是在线帮助 - 相同的结果。我离开了决赛的#39;在我的代码中,因为Microsoft&#39; Intellesense&#39;东西把它放在那里,但它给了我相同的结果。

进一步编辑:

当我将conn更改为&#39; Object&#39;类型,我的代码告诉我&#39;标识符预期&#39; [&#34; MyConn&#34;]在哪里。虽然有几个在线资源告诉我这是正确的,但似乎有些不对劲。

再次感谢。

2 个答案:

答案 0 :(得分:2)

conn = 
ConfigurationManager.ConnectionStrings["MyConn"].ConnectionStrings

必须(注意VB.NET风格)

conn = 
ConfigurationManager.ConnectionStrings("MyConn").ConnectionString

然后返回一个字符串。

答案 1 :(得分:0)

上一个参考,
但是我发现页面顶部有以下必要条件

Imports System.Data  
Imports System.Data.SqlClient

还包含'.ToString'

Dim conn As String = ConfigurationManager.ConnectionStrings("MyConn").ConnectionString.ToString