Blog Content

    티스토리 뷰

    62.C# ASP.NET - WebConfiguation

    반응형
    ConfiguationManager, WebConfiguationManager 둘 다 동일한 역할을 하지만 네임스페이스가 다르다.

    global.asax 파일을 적용 하고자 한다면 빌드를 실행하지만
    Web.config 파일은 빌드를 하지 않고 동적으로 적용하기 때문에 빠르다.

    해당 프로젝트 (웹 사이트 프로젝트)에 있는 web.config파일
    web.config

    <!-- 사이트 전체에서 사용되는 상수 보관 -->

    <appSettings>

        <add key="SITE_NAME" value="닷넷코리아" />

        <add key="SITE_WIDTH" value="770" />

        <add key="SITE_MANAGER" value="박용준" />

    </appSettings>

     

    <!-- 데이터베이스 연결 문자열 -->

    <connectionStrings>

        <add 

            name="ConnectionString"

            connectionString="server=.;database=temp;uid=sa;pwd=Pa$w0rd;"

            providerName="System.Data.SqlClient" />

    </connectionStrings>


    <connectionStrings> : 데이터베이스 연결 문자열 암호화 가능

    <appSettings> : 키 값을 정해주면 전체에 대해서 변경이 가능


    Default.aspx

    <head runat="server">

        <title></title>

    </head>

    <body>

        <form id="form1" runat="server">

        <div>

            사이트명 :

            <asp:Label ID="lblSITE_NAME" runat="server"></asp:Label>

            <br />

            Width :

            <asp:Label ID="lblSITE_WIDTH" runat="server"></asp:Label>

            <br />

            관리자 :

            <asp:Label ID="lblSITE_MANAGER" runat="server"></asp:Label>

            <br />

            <br />

            DB 연결문자열 :

            <asp:Label ID="lblConnectionString" runat="server"></asp:Label>

            <br />

        </div>

        </form>

    </body>

    </html>


    Default.aspx.cs

    protected void Page_Load(object sender, EventArgs e)

    {

       // <appSettins /> 섹션

       //AppSettings ToString 불러오는게 정상, 변환시키지 않음

       lblSITE_NAME.Text =

           System.Configuration.ConfigurationManager.AppSettings[0];

       //정상, Web에서 많이 사용

       lblSITE_WIDTH.Text =

           ConfigurationManager.AppSettings["SITE_WIDTH"].ToString();

     

       // 어플리케이션 전용, 변환시킴

       lblSITE_MANAGER.Text =

           System.Web.Configuration.WebConfigurationManager.AppSettings[2];

      

       // <connectionStrings /> 섹션

       //db연결 문자열 출력

       lblConnectionString.Text =

           WebConfigurationManager.ConnectionStrings[

               "ConnectionString"].ConnectionString + "&nbsp;" +

                   WebConfigurationManager.ConnectionStrings[0].ProviderName;

    }


    결과화면

    [그림62-1]



    반응형

    Comments