zoukankan      html  css  js  c++  java
  • 两种获取connectionString的方式

    两种获取connectionString的方式

    1.

    public static string connectionString = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;

    <connectionStrings>  

    <add name="ConnectionString" connectionString="Data Source=localhost;Persist Security Info=True;User ID=***;Password=***;Unicode=True"  

      providerName="System.Data.OracleClient" />  

    </connectionStrings>  

     

    2.

    public static string connectionString = ConfigurationSettings.AppSettings["ConnectionString"]; 

    <add key="ConnectionString" value="server=localhost;database=***;uid=sa;pwd=***"></add>  

     

    添加位置见下

     <?xml version="1.0" encoding="utf-8"?>
    <configuration>
        <appSettings><!--2.--><add key="ConnectionString" value="***"></add></appSettings>

        <connectionStrings/><!--1.-->
        
    <system.web>
            
    <!-- 
                设置 compilation debug="true" 可将调试符号插入
                已编译的页面中。但由于这会 
                影响性能,因此只在开发过程中将此值 
                设置为 true。
            -->
            <compilation debug="false"></compilation>
            <!--
                通过 <authentication> 节可以配置 ASP.NET 用来 
                识别进入用户的
                安全身份验证模式。 
            -->
            <authentication mode="Windows" />
            <!--
                如果在执行请求的过程中出现未处理的错误,
                则通过 <customErrors> 节可以配置相应的处理步骤。具体说来,
                开发人员通过该节可以配置
                要显示的 html 错误页
                以代替错误堆栈跟踪。
            <customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
                <error statusCode="403" redirect="NoAccess.htm" />
                <error statusCode="404" redirect="FileNotFound.htm" />
            </customErrors>
            -->
        </system.web>
    </configuration>

     数据库连接是否成功

    using System.Data;
    using Oracle.DataAccess.Client;  //注意添加Oracle的引用  ;SqlServer自带

    DataSet dataSet = new DataSet();
    List<ZHInfo> listzh = new List<ZHInfo>();

    string sql = "SELECT CODE,NAME,PHONE_NUMBER FROM ZHXX WHERE 1=1 AND ROWNUM<10 ";
    using (OracleConnection oracleConnection = new OracleConnection(connectionString))
    {
      oracleConnection.Open();
      OracleCommand selectCommand = new OracleCommand(sql, oracleConnection);
      OracleDataAdapter oracleDataAdapter = new OracleDataAdapter(selectCommand);
    
      oracleDataAdapter.Fill(dataSet);
    }
    if (dataSet.Tables.Count > 0 && dataSet.Tables[0] != null && dataSet.Tables[0].Rows.Count > 0)
    {
    //连接成功且返回数据   
    foreach (DataRow dr in dataSet.Tables[0].Rows)   {     listzh.Add(new ZHInfo { Code = dr["Code"].ToString(), Name = dr["Name"].ToString(), PublicNumber = dr["Phone_Number"].ToString() });   } }
    public class ZHInfo
     {
        public string Code { get; set; }
        public string Name { get; set; }
        public string PublicNumber { get; set; }
    }

    参考:grpideas的专栏  两种获取connectionString的方式

     

    AppSettings和ConnectionStrings的使用。

     

    AppSettings是ASP.NET1.1时期用的,在.NET Framework 2.0中,新增了ConnectionStrings.

    1.ConnectionStrings的使用

    <connectionStrings>   
    <add name="ConnectionStringName" connectionString="Data Source=服务器名;Initial Catalog=数据库名;User ID=用户;Password=密码"   
    providerName="System.Data.SqlClient" />   
    </connectionStrings> 

    或者:

    <connectionStrings>   
    <add name="ConnectionStringName" connectionString="sever=服务器名;database=数据库名;User ID=用户;Password=密码"   
    providerName="System.Data.SqlClient" />   
    </connectionStrings>   

    在页面还可以这样引用<%$ ConnectionString:Name%>.

    2.<appSettings>的使用

    <add key="connectionstringName" value="data source=服务器名或IP;initial catalog=数据库名;persist security info=False;user id=用户;password=密码;packet size=4096">   
    </add>   

    3.区别

    1)AppSettings 是在2003中常用的,ConnectionStrins是2005中常用的. 
    2)使用ConnectionString的好处: 
    第一:可将连接字符串加密,使用MS的一个加密工具即可。 
    第二:可直接邦定的数据源控件,而不必写代码读出来再赋值给控件。 
    第三:可方便的更换数据库平台,如换为Oracle数据库,只需修改providerName。 
    3)写在 <appSettings >中用System.Configuration.ConfigurationManager.AppSettings["name"]检索值。 
    写在 <ConnectionStrings>中用System.Configuration.ConfigurationManager.ConnectionStrings["name"]检索值。

    4.测试

    在VS2005中新建一个网站,然后再defaul页面中加入如下代码

    using System.Web;  
    using System.Web.Security;  
    using System.Web.UI;  
    using System.Web.UI.WebControls;  
    using System.Web.UI.WebControls.WebParts;  
    using System.Web.UI.HtmlControls;  
      
    public partial class _Default : System.Web.UI.Page   
    {  
        protected void Page_Load(object sender, EventArgs e)  
        {  
            labConn.Text = ConfigurationManager.ConnectionStrings["SiteSqlServer"].ToString();  
            labApp.Text = ConfigurationManager.AppSettings["SiteSqlServer"].ToString();  
        }  
    }  

    而web.config的代码如下:

    <?xml version="1.0"?>  
    <!--   
        注意: 除了手动编辑此文件以外,您还可以使用   
        Web 管理工具来配置应用程序的设置。可以使用 Visual Studio 中的  
         “网站”->“Asp<a href="http://lib.csdn.net/base/dotnet" class='replace_word' title=".NET知识库" target='_blank' style='color:#df3434; font-weight:bold;'>.NET</a> 配置”选项。  
        设置和注释的完整列表在   
        machine.config.comments 中,该文件通常位于   
        /Windows/Microsoft.Net/Framework/v2.x/Config 中  
    -->  
    <configuration>  
      <connectionStrings>  
        <add name="SiteSqlServer" connectionString="Data Source=XUWEI/SQLEXPRESS;Initial Catalog=store;User ID=dnndemo;Password=dnndemo" providerName="System.Data.SqlClient" />  
      </connectionStrings>  
        
      <appSettings>  
        <add key="SiteSqlServer" value="Data Source=XUWEI/SQLEXPRESS;Initial Catalog=store;User ID=dnndemo;Password=dnndemo" />  
        </appSettings>  
      
        <system.web>  
            <!--   
                设置 compilation debug="true" 将调试符号插入  
                已编译的页面中。但由于这会   
                影响性能,因此只在开发过程中将此值   
                设置为 true。  
            -->  
            <compilation debug="true"/>  
            <!--  
                通过 <authentication> 节可以配置 ASP.NET 使用的   
                安全身份验证模式,  
                以标识传入的用户。   
            -->  
            <authentication mode="Windows"/>  
            <!--  
                如果在执行请求的过程中出现未处理的错误,  
                则通过 <customErrors> 节可以配置相应的处理步骤。具体说来,  
                开发人员通过该节可以配置  
                要显示的 html 错误页  
                以代替错误堆栈跟踪。  
      
            <customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">  
                <error statusCode="403" redirect="NoAccess.htm" />  
                <error statusCode="404" redirect="FileNotFound.htm" />  
            </customErrors>  
            -->  
        </system.web>  
    </configuration>  

    当然前提是在编辑页面中添加了两个lable,分别为labConn和labApp。

    读取Web.Config文件连接字符串
    string conString = ConfigurationManager.ConnectionStrings["SQLCONNECTIONSTRING"].ConnectionString;
  • 相关阅读:
    2016"百度之星"
    codeforces 55 div2 C.Title 模拟
    codeforces 98 div2 C.History 水题
    codeforces 97 div2 C.Replacement 水题
    codeforces 200 div2 C. Rational Resistance 思路题
    bzoj 2226 LCMSum 欧拉函数
    hdu 1163 九余数定理
    51nod 1225 余数的和 数学
    bzoj 2818 gcd 线性欧拉函数
    Codeforces Round #332 (Div. 2)D. Spongebob and Squares 数学
  • 原文地址:https://www.cnblogs.com/wangfuyou/p/4878931.html
Copyright © 2011-2022 走看看