【问题标题】:How to use database connection strings in ASP.NET?如何在 ASP.NET 中使用数据库连接字符串?
【发布时间】:2011-05-26 01:59:28
【问题描述】:

我刚刚真正开始使用 ASP.NET,我想知道是否可以使用来自数据源的连接字符串,而不是对它们进行硬编码。我已经在数据源中添加了我的连接并且它可以工作,我还可以在设计模式下将表格拖到页面上,但我不知道如何在代码中访问它。这是我将其拖入时得到的结果:

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" 
    DataSourceID="SqlDataSource1" 
    EmptyDataText="There are no data records to display.">
    <Columns>
        <asp:BoundField DataField="id" HeaderText="id" ReadOnly="True" 
            SortExpression="id" />
        <asp:BoundField DataField="xxx" HeaderText="xxx" 
            SortExpression="xxx" />
        <asp:BoundField DataField="xxx" HeaderText="xxx" 
            SortExpression="xxx" />
    </Columns>
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server" 
    ConnectionString="<%$ ConnectionStrings:xxxConnectionString1 %>" 
    ProviderName="<%$ ConnectionStrings:xxxConnectionString1.ProviderName %>" 
    SelectCommand="SELECT xxx FROM xxx">
</asp:SqlDataSource>

【问题讨论】:

  • web.config中不是存储的字符串吗?
  • @melaos: 是的:&lt;connectionStrings&gt; &lt;add name="ApplicationServices" connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnetdb.mdf;User Instance=true" providerName="System.Data.SqlClient" /&gt; &lt;add name="xxxConnectionString1" connectionString="xxx" providerName="System.Data.SqlClient" /&gt; &lt;/connectionStrings&gt; 但是我怎么去 xxxConnectionString1?
  • 你有什么问题?为什么要在页面上拖动表格?您的 gridview 是否显示记录?

标签: asp.net sql-server database vb.net


【解决方案1】:

我认为你的问题是..你如何访问你看到的连接字符串属性

ConnectionString="&lt;%$ ConnectionStrings:xxxConnectionString1 %&gt;" 在你的 aspx 页面中对吗?

正如巴拉 R 提到的......

使用

ConfigurationManager.ConnectionStrings["xxxConnectionString1"].ToString();

但为了做到这一点,您应该添加对 System.Configuration 的引用。

Imports System.Configuration

【讨论】:

    【解决方案2】:

    你可以像这样在后面的代码中获取连接字符串

    ConfigurationManager.ConnectionStrings["xxxConnectionString1"].ConnectionString;
    

    【讨论】:

    • 为什么他需要在代码后面得到这个,因为他可以直接进入他正在使用的 SQL 数据源。
    • @Muhammad 我不确定,但我认为这就是 OP 要求的but I can't figure out how to access it in code
    【解决方案3】:

    以上帖子是准确的,您需要探索 system.configuration 程序集/命名空间。文本内容可以存储在 AppSettings 或 ConnectionStrings 中。值得了解它们是如何向前发展的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-03-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多