ÀÌ ¹®¼¿¡¼´Â ±¸¼º(.config) ÆÄÀÏ¿¡ »ç¿ëÀÚ ÁöÁ¤ Á¤º¸¸¦ ÀúÀåÇϰí ÀÌÈÄ ·±Å¸ÀÓ µµÁß¿¡ ¿¬°áµÈ ÇÁ·Î±×·¥À» ÅëÇÏ¿© Á¤º¸¸¦ °Ë»öÇÒ ¼ö ÀÖµµ·Ï ÇÏ´Â ¹æ¹ýÀ» ¼³¸íÇÕ´Ï´Ù. ÀÌ ¹æ¹ýÀº ÀÀ¿ë ÇÁ·Î±×·¥°ú ¿¬°üµÈ µ¥ÀÌÅ͸¦ Á¤ÀÇÇØ¾ß ÇÒ ¶§ À¯¿ëÇÕ´Ï´Ù.
¿ä±¸ »çÇ×
´ÙÀ½Àº ±ÇÀå Çϵå¿þ¾î, ¼ÒÇÁÆ®¿þ¾î, ³×Æ®¿öÅ© ÀÎÇÁ¶ó ¹× ¼ºñ½º ÆÑÀÔ´Ï´Ù.
- Microsoft Windows 2000 ¶Ç´Â Microsoft Windows XP
- Microsoft Visual Studio .NET
ÀÌ ¹®¼´Â »ç¿ëÀÚ°¡ ´ÙÀ½ Ç׸ñÀ» Àß ¾Ë°í ÀÖ´Ù°í °¡Á¤ÇÕ´Ï´Ù.
- XML(Extensible Markup Language)
- .NET ±¸¼º ÆÄÀÏ
±¸¼º ÆÄÀÏÀÇ ³»¿ëÀ» Àд ÄÜ¼Ö ÀÀ¿ë ÇÁ·Î±×·¥ ¸¸µé±â
ÀÀ¿ë ÇÁ·Î±×·¥ ¼³Á¤À» ÇØ´ç ÀÀ¿ë ÇÁ·Î±×·¥°ú ¿¬°üµÈ ±¸¼º ÆÄÀÏ¿¡ ÀúÀåÇÒ ¼ö ÀÖ½À´Ï´Ù. ±¸¼º ÆÄÀÏÀº XML Çü½ÄÀ¸·Î ÀúÀåµË´Ï´Ù. Microsoft .NET FrameworkÀÇ
System.Configuration ¹×
System.Collections.Specialized ³×ÀÓ½ºÆäÀ̽º¿¡´Â ·±Å¸ÀÓ µ¿¾È¿¡ .NET ÀÀ¿ë ÇÁ·Î±×·¥ ±¸¼º ÆÄÀÏ¿¡¼ Á¤º¸¸¦ °Ë»öÇÏ´Â µ¥ ÇÊ¿äÇÑ Å¬·¡½º°¡ Æ÷ÇԵǾî ÀÖ½À´Ï´Ù.
·±Å¸ÀÓ µ¿¾È¿¡ ¿¬°üµÈ ±¸¼º ÆÄÀÏÀÇ ³»¿ëÀ» Àд ÄÜ¼Ö ÀÀ¿ë ÇÁ·Î±×·¥À» ¸¸µé·Á¸é ´ÙÀ½°ú °°ÀÌ ÇϽʽÿÀ.
- Visual Studio .NETÀ» ½ÃÀÛÇÕ´Ï´Ù.
- Visual Basic .NET¿¡¼ ConConfig¶ó´Â ÄÜ¼Ö ÀÀ¿ë ÇÁ·Î±×·¥ ÇÁ·ÎÁ§Æ®¸¦ »õ·Î ¸¸µì´Ï´Ù. ±âº»ÀûÀ¸·Î Module1À̶ó´Â ¸ðµâÀÌ ¸¸µé¾îÁý´Ï´Ù.
- ¼Ö·ç¼Ç Ž»ö±â âÀÌ ³ªÅ¸³ª´ÂÁö È®ÀÎÇÕ´Ï´Ù. âÀÌ ³ªÅ¸³ªÁö ¾ÊÀ¸¸é Ctrl+Alt+L ۸¦ ´©¸¨´Ï´Ù.
- ¼Ö·ç¼Ç Ž»ö±â¿¡¼ ¸ðµç ÆÄÀÏ Ç¥½Ã¸¦ ´©¸¨´Ï´Ù.
- BinÀ» ¸¶¿ì½º ¿À¸¥ÂÊ ´ÜÃß·Î ´©¸¥ ´ÙÀ½ ÇÁ·ÎÁ§Æ®¿¡ Æ÷ÇÔÀ» ´©¸¨´Ï´Ù.
- Bin Æú´õ¸¦ ¸¶¿ì½º ¿À¸¥ÂÊ ´ÜÃß·Î ´©¸£°í, Ãß°¡¸¦ °¡¸®Å² ´ÙÀ½ »õ Ç׸ñ Ãß°¡¸¦ ´©¸¨´Ï´Ù.
- »õ Ç׸ñ Ãß°¡ ´ëÈ »óÀÚ¿¡¼ ÀÀ¿ë ÇÁ·Î±×·¥ ±¸¼º ÆÄÀÏ ÅÛÇø´À» ¼±ÅÃÇϰí, ¿±â¸¦ ´©¸¥ ´ÙÀ½ ÇÁ·ÎÁ§Æ®¿¡ App.config ÆÄÀÏÀ» Ãß°¡ÇÕ´Ï´Ù.
Âü°í: ÀÀ¿ë ÇÁ·Î±×·¥ ±¸¼º ÆÄÀÏÀº ¿¬°üµÈ ½ÇÇà ÆÄÀϰú °°Àº Æú´õ¿¡ ÀÖ¾î¾ß ÇÕ´Ï´Ù. Visual Studio .NETÀÌ ½ÇÇà ÆÄÀÏÀ» Bin Æú´õ¿¡ ¹èÄ¡ÇϹǷΠ±¸¼º ÆÄÀϵµ Bin Æú´õ¿¡ ¹èÄ¡ÇØ¾ß ÇÕ´Ï´Ù. - ´ÙÀ½°ú °°Àº Çü½Ä¿¡ µû¶ó ÀÀ¿ë ÇÁ·Î±×·¥ ±¸¼º ÆÄÀÏÀÇ À̸§À» ÁöÁ¤ÇØ¾ß ÇÕ´Ï´Ù
ApplicationName.ApplicationType.config
¼Ö·ç¼Ç Ž»ö±â¿¡¼ App.config¸¦ ¸¶¿ì½º ¿À¸¥ÂÊ ´ÜÃß·Î ´©¸¥ ´ÙÀ½ À̸§ ¹Ù²Ù±â¸¦ ´©¸¨´Ï´Ù. App.config ÆÄÀÏÀÇ À̸§À» ConConfig.exe.config·Î ¹Ù²ß´Ï´Ù. ÀÌÁ¦ ¿¬°üµÈ ÀÀ¿ë ÇÁ·Î±×·¥ÀÌ ÀÌ .config ÆÄÀÏÀ» ãÀ» ¼ö ÀÖ½À´Ï´Ù. - ÀÀ¿ë ÇÁ·Î±×·¥ ±¸¼º ÆÄÀÏÀ» »ç¿ëÇÏ¿© Ű/°ª Çü½ÄÀ¸·Î ÀúÀåÇÑ »ç¿ëÀÚ ÁöÁ¤ ÀÀ¿ë ÇÁ·Î±×·¥ ¼³Á¤À» ¼öÁýÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿¬°üµÈ ±¸¼º ÆÄÀÏÀÇ <appSettings> ¼½¼Ç¿¡ <add> ¿ä¼Ò¸¦ Æ÷ÇÔ½Ãų ¼ö ÀÖ½À´Ï´Ù. °¢ Ű/°ª ½ÖÀÌ <add> ¿ä¼Ò¸¦ Çϳª¾¿ °®°í ÀÖ½À´Ï´Ù. <add> ¿ä¼ÒÀÇ Çü½ÄÀº ´ÙÀ½°ú °°½À´Ï´Ù.
<add key="theKey" value="theValue" />
±¸¼º ÆÄÀÏ¿¡ <configuration> ÅÂ±×¿Í </configuration> ÅÂ±× »çÀÌ¿¡ <add> ¿ä¼Ò¸¦ »ç¿ëÇÏ¿© <appSettings> ¼½¼ÇÀ» Ãß°¡ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î ´ÙÀ½ ±¸¼º ÆÄÀÏÀº ¼¼ °³ÀÇ Å°/°ª ½ÖÀ» ÁöÁ¤ÇÏ´Â <appSettings> ¼½¼ÇÀ» Æ÷ÇÔ½Ãŵ´Ï´Ù.
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="Key0" value="0" />
<add key="Key1" value="1" />
<add key="Key2" value="2" />
</appSettings>
</configuration>
- ¼Ö·ç¼Ç Ž»ö±â¿¡¼ Module1.vb¸¦ µÎ ¹ø ´·¯ Module1 ÄÚµå âÀ» Ç¥½ÃÇÕ´Ï´Ù. ÄÚµå ¸ðµâ¿¡ ´ÙÀ½ ¹®À» Ãß°¡ÇÕ´Ï´Ù.
Âü°í: ´ÙÀ½ ¹®µéÀº ÆÄÀÏÀÇ ´Ù¸¥ ¹® ¾Õ¿¡ ³ªÅ¸³ª¾ß ÇÕ´Ï´Ù.
Imports System.Configuration
Imports System.Collections.Specialized
- Sub Main ÇÁ·Î½ÃÀú¿¡¼ ±¸¼º ÆÄÀÏÀÇ <appSettings> ¼½¼Ç¿¡ ÀÖ´Â ±¸¼º ÆÄÀÏ Å°ÀÇ °ªÀ» º¸À¯Çϵµ·Ï ¹®ÀÚ¿ º¯¼öÀÇ Â÷¿øÀ» ÁöÁ¤ÇÕ´Ï´Ù.
- ±¸¼º ÆÄÀÏÀÇ <appSettings> ¼½¼Ç¿¡¼ ÁöÁ¤ÇÑ Å°ÀÇ °ªÀ» °Ë»öÇÏ·Á¸é ConfigurationSettings Ŭ·¡½ºÀÇ AppSettings ¸Þ¼µå¸¦ »ç¿ëÇÕ´Ï´Ù. ConfigurationSettings Ŭ·¡½º´Â System.Configuration ³×ÀÓ½ºÆäÀ̽º¿¡ ÀÖ½À´Ï´Ù. AppSettings ¸Þ¼µå°¡ ۸¦ Æ÷ÇÔÇϰí ÀÖ´Â ¹®ÀÚ¿ ÀÔ·Â ¸Å°³ º¯¼ö¸¦ ¹ÞÀ¸¸é ÀÀ¿ë ÇÁ·Î±×·¥ÀÌ ÇØ´ç Ű¿Í ¿¬°üµÈ °ªÀ» °Ë»öÇÕ´Ï´Ù.
´ÙÀ½ ÄÚµå´Â ¿¬°üµÈ ±¸¼º ÆÄÀÏ¿¡¼ Key0 Ư¼ºÀÇ °ªÀ» °Ë»öÇÕ´Ï´Ù. ±×·± ´ÙÀ½ ÄÚµå´Â ÀÌ °ªÀ» ¹®ÀÚ¿ º¯¼ö sAttr¿¡ ¹èÄ¡ÇÕ´Ï´Ù. ÀÌ °ªÀÇ Å°°¡ ¾øÀ¸¸é sAttr¿¡ NothingÀÌ ÀúÀåµË´Ï´Ù.
sAttr = ConfigurationSettings. AppSettings("Key0") - ÀÀ¿ë ÇÁ·Î±×·¥ÀÌ °Ë»öÇÏ´Â °ªÀ» ÄÜ¼Ö Ã¢¿¡ Ç¥½ÃÇÏ·Á¸é Console.WriteLineÀ» »ç¿ëÇÕ´Ï´Ù.
Console.WriteLine("The value of Key0: " & sAttr) - AppSettings ¼Ó¼º¿¡ ´ëÇÑ ÂüÁ¶¸¦ Çϳª¸¸ »ç¿ëÇØµµ <appSettings> ¼½¼ÇÀÇ Å°/°ª ½ÖÀ» ¸ðµÎ °Ë»öÇÒ ¼ö ÀÖ½À´Ï´Ù. AppSettings ¼Ó¼ºÀ» »ç¿ëÇÒ ¶§ ¸Å°³ º¯¼ö¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é ÀÀ¿ë ÇÁ·Î±×·¥ÀÌ ¿¬°üµÈ Ű/°ª ½ÖÀ» ¸ðµÎ ¹ÝȯÇÕ´Ï´Ù. ÀÌ·¯ÇÑ ½ÖÀº ÀÀ¿ë ÇÁ·Î±×·¥ÀÌ °Ë»öÇÏ´Â °¢ Ű¿¡ ´ëÇÑ Å°/°ª ½ÖÀ» Æ÷ÇÔÇϰí ÀÖ´Â NameValueCollection Çü½ÄÀ¸·Î ÀúÀåµÇ¾î ÀÖ½À´Ï´Ù. NameValueCollection Ŭ·¡½º´Â System.Collections.Specialized ³×ÀÓ½ºÆäÀ̽º¿¡ ÀÖ½À´Ï´Ù.
Dim sAll As NameValueCollection
sAll = ConfigurationSettings.AppSettings()
- NameValueCollectionÀÇ AllKeys ¼Ó¼ºÀº ÀÀ¿ë ÇÁ·Î±×·¥ÀÌ °Ë»öÇÏ´Â °¢ Ű¿¡ ´ëÇÑ Ç׸ñÀ» °®°í ÀÖ´Â ¹®ÀÚ¿ ¹è¿À» ÂüÁ¶ÇÕ´Ï´Ù. For Next ±¸¼ºÀ» »ç¿ëÇØ¼ AllKeys ¹è¿À» ÅëÇØ ¹Ýº¹ À̵¿ÇÏ¿© ÀÀ¿ë ÇÁ·Î±×·¥ÀÌ °Ë»öÇÏ´Â °¢ Ű¿¡ ¾×¼¼½ºÇÕ´Ï´Ù. AllKeysÀÇ °¢ Ű Ç׸ñÀº ¹®ÀÚ¿ µ¥ÀÌÅÍ Çü½ÄÀÔ´Ï´Ù.
Dim s As String
For Each s In sAll.AllKeys
- For Each ±¸¼º ³»¿¡¼ Console.WriteLineÀ» »ç¿ëÇÏ¿© ÄÜ¼Ö Ã¢¿¡ Ű¿Í ±× ¿¬°ü °ªÀ» Ç¥½ÃÇÕ´Ï´Ù. ÀÀ¿ë ÇÁ·Î±×·¥ÀÌ Ã³¸®ÇÏ´Â ÇöÀç Ű´Â "s"¿¡ ÀÖ½À´Ï´Ù. ÇöÀç ۸¦ sAllNameValueCollection¿¡¼ À妽º·Î »ç¿ëÇÏ¿© ÇöÀç Ű¿Í ¿¬°üµÈ °ªÀ» ¾ò½À´Ï´Ù.
¿¹¸¦ µé¾î ÀÀ¿ë ÇÁ·Î±×·¥ÀÌ Key0 ۸¦ ó¸®ÇÏ´Â °æ¿ì sAll("Key0")Àº ÀÌ Å°¿Í ¿¬°üµÈ °ªÀ» °Ë»öÇÕ´Ï´Ù. Console.Readline ¹®Àº ÄܼÖÀ» ÀϽà Áß´ÜÇÕ´Ï´Ù. Enter ۸¦ ´©¸£¸é ÀÀ¿ë ÇÁ·Î±×·¥À» Á¾·áÇÒ ¼ö ÀÖ½À´Ï´Ù.
Console.WriteLine("Key: " & s & " Value: " & sAll(s))
Next
Console.Readline
ÀÛµ¿ È®ÀÎ ¿©ºÎ
F5 ۸¦ ´·¯ Äڵ带 ½ÇÇàÇϽʽÿÀ. ÄÜ¼Ö Ã¢¿¡ ¿¬°üµÈ ±¸¼º ÆÄÀÏÀÇ
<appSettings> ¼½¼ÇÀÇ Å°/°ª ½ÖÀÌ ´ÙÀ½°ú °°ÀÌ Ç¥½ÃµË´Ï´Ù.
The value of Key0: 0
Key: Key0 Value:0
Key: Key1 Value:1
Key: Key2 Value:2
Àüü ÄÚµå ¿¹Á¦
Imports System.Configuration
Imports System.Collections.Specialized
Module Module1
Sub Main()
Dim sAttr As String
sAttr = ConfigurationSettings.AppSettings("Key0")
Console.WriteLine("The value of Key0: " & sAttr)
Dim sAll As NameValueCollection
sAll = ConfigurationSettings.AppSettings()
Dim s As String
For Each s In sAll.AllKeys
Console.WriteLine("Key: " & s & " Value: " & sAll(s))
Next
Console.ReadLine()
End Sub
End Module Àüü ±¸¼º ÆÄÀÏ ¿¹Á¦(ConConfig.exe.config)
<configuration>
<appSettings>
<add key="Key0" value="0"/>
<add key="Key1" value="1"/>
<add key="Key2" value="2"/>
</appSettings>
</configuration>
¹®Á¦ ÇØ°á
ÀÚ¼¼ÇÑ ³»¿ëÀº ´ÙÀ½ MSDN À¥ »çÀÌÆ®¸¦ ÂüÁ¶ÇϽʽÿÀ.
±â¼ú ÀÚ·á: 313405 - ¸¶Áö¸· °ËÅä: 2002³â 4¿ù 16ÀÏ È¿äÀÏ - ¼öÁ¤: 1.0
º» ¹®¼ÀÇ Á¤º¸´Â ´ÙÀ½ÀÇ Á¦Ç°¿¡ Àû¿ëµË´Ï´Ù.
- Microsoft Visual Basic .NET 2002 Standard Edition
| kbhowto kbhowtomaster KB313405 |