복붙노트

[SQL] C #의 WinForm에서의 app.config를 사용하여 데이터베이스 연결 문자열에 액세스

SQL

C #의 WinForm에서의 app.config를 사용하여 데이터베이스 연결 문자열에 액세스

내 C #의 윈폼 응용 프로그램에서의 app.config 데이터베이스 연결 문자열에 액세스 할 수없는 것.

의 app.config 코드

   <connectionStrings>
      <add name="MyDBConnectionString" providerName="System.Data.SqlClient"
            connectionString="Data Source=localhost;Initial Catalog=MySQLServerDB; Integrated Security=true" />
   </connectionStrings>  

C # 코드 :

SqlConnection conn = new SqlConnection();
conn.ConnectionString = System.Configuration.ConfigurationSettings.AppSettings["MyDBConnectionString"];    

나는 C # 코드를하려고 할 때, 나는 메시지가 : 1 'System.Configuration.ConfigurationSettings.AppSettings'을 경고 사용되지 않습니다 ' 이 방법은 '이 System.Configuration! System.Configuration.ConfigurationManager.AppSettings로 대체되었습니다, 사용되지 않습니다

그러나, 내가 사용하려고 할 때 :

conn.ConnectionString = System.Configuration!System.Configuration.ConfigurationManager.AppSettings["MyDBConnectionString"];  

오류가 발생합니다 : 만 할당, 호출, 증가, 감소, 새로운 객체 표현 진술로 사용할 수 있습니다

해결법

  1. ==============================

    1.이것은 당신이 필요로하는 모든 것입니다 :

    이것은 당신이 필요로하는 모든 것입니다 :

    System.Configuration.ConfigurationManager.ConnectionStrings["MyDBConnectionString"].ConnectionString;
    
  2. ==============================

    2.대신 ConfigurationSettings의 사용의 ConfigurationManager. 그것은 당신이 connectionStrings 섹션에서 연결 문자열에 사용해야하는 ConnectionStrings 속성이 있습니다 :

    대신 ConfigurationSettings의 사용의 ConfigurationManager. 그것은 당신이 connectionStrings 섹션에서 연결 문자열에 사용해야하는 ConnectionStrings 속성이 있습니다 :

    ConfigurationManager.ConnectionStrings["MyDBConnectionString"].ConnectionString;
    
  3. ==============================

    3.당신은 ConnectionStrings 수집하지 appSettings는을 사용하고 있습니다.

    당신은 ConnectionStrings 수집하지 appSettings는을 사용하고 있습니다.

    ConfigurationManager.ConnectionStrings["MyDbConnectionString"].ConnectionString;
    
  4. ==============================

    4.

    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
    
    <appSettings>
    
    <add key="ConnectionString" value="Data Source=MY-PC;Initial Catalog=DB2013;User ID=sa;Password=MYSQL123" />
    
    </appSettings>
    
    </configuration>
    using System.Configuration;
    using System.Data.SqlClient;
    
    namespace OnlineDelete_W2013
    {
    public partial class CommodityEdit : Form
    {
       SqlConnection MyConnection = new SqlConnection(System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"]);
    
        public CommodityEdit()
        {
            InitializeComponent();
    
        }
    
        private void button1_Click(object sender, EventArgs e)
        {
            try
            {
               MyConnection.Open();
            }
            catch (Exception)
            {
    
                throw;
            }
    
  5. ==============================

    5.이 시도

    이 시도

     ConfigurationManager.ConnectionStrings["MyDbConnectionString"].ConnectionString; 
    
  6. ==============================

    6.

    using (SqlConnection conn = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["SQLConnection"].ToString()))
    {
    ....(your code here) ...
    }
    
  7. ==============================

    7.

    SqlConnection conn = new SqlConnection();
    conn.ConnectionString = ConfigurationManager
        .ConnectionStrings["MyDBConnectionString"].ConnectionString;
    try
    {
        conn.Open();                
    }
    catch (Exception)
    {
        throw;                    
    }
    
  8. ==============================

    8.대답은 라인을 사용하는 진술

    대답은 라인을 사용하는 진술

    ConfigurationManager.ConnectionStrings["MyDBConnectionString"].ConnectionString;
    

    정확합니다.

    오류가 ConfigurationManager가 존재하지 않는다는 나타나면 프로젝트 System.Configuration를 참조하지 않은 때문입니다.

    당신이 참조 추가, 코드 줄, 참고 문헌에서 마우스 오른쪽 클릭을 사용하여 선택합니다 프로젝트에 솔루션 탐색기에서 .NET 프레임 워크에 그렇게하려면 ... 다음 그 아래 왼쪽 및 프레임 워크 어셈블리를 선택 . 목록에 System.Configuration을 선택하고 확인을 클릭합니다.

  9. ==============================

    9.이것에 대해서:

    이것에 대해서:

    난 그냥 이런 VAR를 선언하고 문제를 해결 :

    var strConnection = System.Configuration.ConfigurationManager.ConnectionStrings["MyDBConnectionString"].ConnectionString;
    
  10. ==============================

    10.코드 아래에 시도하십시오. 당신이 기대대로입니다 :

    코드 아래에 시도하십시오. 당신이 기대대로입니다 :

    SqlConnection MyConnection = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);       
    
  11. from https://stackoverflow.com/questions/8476103/accessing-database-connection-string-using-app-config-in-c-sharp-winform by cc-by-sa and MIT license