Beginning ASP.NET using VB.NET ¿¬½À¹®Á¦ / ÇØ´ä

Beginning ASP.NET using VB.NET ¿¬½À¹®Á¦ 4, 5Àå / ÇØ´ä

 º»¹® ÃÖÃÊ ÀÛ¼ºÀÏ : 2002³â 07¿ù 07ÀÏ
 º»¹® ÃÖÁ¾ ¼öÁ¤ÀÏ : 2002³â 07¿ù 16ÀÏ

 ÀÛ¼ºÀÚ : Áö¿ë±º(¼º Áö¿ë)
 ÆíÁýÀÚ : Áö¿ë±º(¼º Áö¿ë)

¾È³çÇϼ¼¿ä. Áö¿ë±ºÀÔ´Ï´Ù. Beginning ASP.NET using VB.NETÀÇ ¿¬½À¹®Á¦¿¡ ´ëÇÑ ÇØ´äÀÌ ¼­Àû¿¡¼­ Á¦°øµÇÁö ¾Ê¾Ò½À´Ï´Ù.

ÀÌ¿¡ ´ëÇÑ ÇØ´äÀ» ÃâÆÇ»ç ÃøÀ¸·Î ºÎÅÍ ¹Þ¾Æ¼­ °ÔÀçÇØ µå¸³´Ï´Ù.


¢Ã 4Àå. VB.NETÀÇ Á¤º¸ ÀúÀå

Chap 4 - Q1 : º¯¼ö¶õ ¹«¾ùÀΰ¡? ¶ÇÇÑ º¯¼ö´Â VB.NETÀÇ µ¥ÀÌÅÍÇü°ú ¾î¶»°Ô °ü·ÃµÇ´Â°¡?

A1 : º¯¼ö´Â ¸Þ¸ð¸®¿¡ ÀúÀåµÇ¾î ÀÖ´Â Á¤º¸¸¦ °¡¸®Å°°í ÀÖ´Â À̸§Ç¥ÀÌ´Ù. µ¥ÀÌÅÍÇüÀº ¼ýÀÚ ¶Ç´Â ¹®ÀÚÀÇ ÁýÇÕ°ú °°ÀÌ Æ¯Á¤ÇÑ À¯ÇüÀÇ °ªÀÇ ÁýÇÕÀ̶ó°í ÇÒ ¼ö ÀÖ´Ù. VB.NET¿¡¼­ °¢ º¯¼öµéÀº º¯¼ö¿¡ ¼Ò¼ÓµÈ µ¥ÀÌÅÍÇüÀ» °¡Áö°í ÀÖ´Ù. µû¶ó¼­ º¯¼öµéÀº ÇØ´çÇÏ´Â À¯Çü¿¡ ¸Â´Â °ª¸¸À» ¹Þ¾ÆµéÀÌ°Ô µÈ´Ù. ÀÌ ¶§¹®¿¡, VB.NETÀ» °­·ÂÇÑ µ¥ÀÌÅÍÇü ¾ð¾î(°ß°íÇÏ°Ô Çü½ÄÈ­ µÈ, strongly typed language)¶ó°í ÇÑ´Ù.

Chap 4 - Q2 : ¼ýÀÚÇü°ú ÅØ½ºÆ®Çü µ¥ÀÌÅÍ º¯¼ö¸¦ »ç¿ëÇÏ¿© À̸§, ³ªÀÌ, »ýÀÏÀ» Ãâ·ÂÇÏ´Â ASPX ÆÄÀÏÀ» »ý¼ºÇ϶ó.

A2

<script language="vb" runat="server">
Sub Page_Load()
     Dim name As String
     Dim age As Integer
     Dim dateOfBirth As Date

     name = "ÀÌÇöÁß"
     age = 30
     dateOfBirth = #8/28/1972#

     Display1.Text = name
     Display2.Text = age
     Display3.Text = dateOfBirth
End Sub
</script>

<html>
<body>
     ¾È³çÇϼ¼¿ä. Á¦ À̸§Àº 
     <asp:label id="Display1" runat="server" />
     ÀÔ´Ï´Ù.
     <br>Àú´Â 
     <asp:label id="Display2" runat="server" />
     »ì ÀÔ´Ï´Ù.
     <br>Àú´Â
     <asp:label id="Display3" runat="server" />¿¡ ž½À´Ï´Ù.
</body>
</html>

Chap 4 - Q3 : ´ÙÀ½ µ¥ÀÌÅÍÇüµéÀ» ¼ýÀÚÇü, ÅØ½ºÆ®Çü°ú ´Ù¾çÇÑ µ¥ÀÌÅÍÇüÀ¸·Î ¹­°í, °¢ µ¥ÀÌÅÍÇüÀÇ °ª°ú »ç¿ë ¿¹¸¦ ÀÛ¼ºÇ϶ó.

  • Integer
  • Char
  • Byte
  • Short
  • Boolean
  • String
  • Long
  • Single
  • Double
  • Date
  • Decimal

A3

¼ýÀÚ
µ¥ÀÌÅÍÇü
°ª ¿¹Á¦ »ç      ¿ë
Integer 467,892 -2,147,483,648ºÎÅÍ 2,14,483,647¿¡ À̸£´Â Á¤¼ö¸¦ ÀúÀå
Byte 174 0ºÎÅÍ 255¿¡ À̸£´Â ¹üÀ§ÀÇ Á¤¼ö¸¦ ÀúÀå
Short 76 -32,768ºÎÅÍ 32,767¿¡ À̸£´Â Á¤¼ö¸¦ ÀúÀå
Long 8,976,347,864 -9,223,372,036,854,755,808ºÎÅÍ 9,223,372,036,854,755,807 ±îÁö ÀúÀå
Single -1.6088E-10 ´ÜÁ¤µµ ºÎµ¿ ¼Ò¼ö·Î¼­, À½¼öÀÇ °æ¿ì¿¡´Â -3.402823E38¿¡¼­ -1.401298E-45±îÁö ÀúÀåÇÒ ¼ö ÀÖ°í, ¾ç¼öÀÇ °æ¿ì¿¡´Â 1.401298E-45ºÎÅÍ 3.402823E38±îÁö ÀúÀå
Double 3.965468572385E-271 ¹èÁ¤µµ ºÎµ¿ ¼Ò¼ö·Î¼­,
À½¼öÀÇ °æ¿ì¿¡´Â 1.79769313486232E308¿¡¼­ºÎÅÍ -4.94065645841247E-324±îÁö ÀúÀåÀÌ °¡´ÉÇϸç,
¾ç¼öÀÇ °æ¿ì¿¡´Â 4.94065645841247E-324ºÎÅÍ 1.79769313486232E308±îÁö ÀúÀå
Decimal 12.76 ¼Ò¼öÁ¡ 28ÀÚ¸®±îÁö ÀúÀå

¹®ÀÚ µ¥ÀÌÅÍÇü °ª ¿¹Á¦ »ç¿ë
String "°¡°Ô¿¡ °£´Ù" ÅØ½ºÆ®¸¦ ÀúÀå
Char "A"C ¹®ÀÚ¸¦ ¼ýÀÚ·Î ÀúÀå. »ç¿ëÀÚ Á¤ÀÇ ¹®ÀÚ ¼ÂÀ» ÀúÀåÇÏ´Â °æ¿ì¿¡µµ ¸¶Âù°¡ÁöÀÓ.

´Ù¾çÇÑ
µ¥ÀÌÅÍÇü
°ª ¿¹Á¦ »ç¿ë
Date #09/09/1926# / #16:25:05# ³¯Â¥ ¶Ç´Â ½Ã°£ °ªÀ» ÀúÀå
Boolean True True ¶Ç´Â False, µÎ °³ÀÇ °ª¸¸ ÀúÀå.

Chap 4- Q4 : µÎ °³ÀÇ Á¤¼öÇü º¯¼ö¸¦ ÀÌ¿ëÇÏ¿© °ö¼À ¿¬»êÀ» ¼öÇàÇÏ´Â ASPX ÆÄÀÏÀ» ÀÛ¼ºÇ϶ó. ±×¸®°í ³ª¼­ ±×°ÍÀ» µÎ ¼ýÀÚ·Î µ¡¼À, ³ª´°¼À, »¬¼À ¿¬»êÀ» ÇÏ´Â ¿¹Á¦·Î º¯°æÇ϶ó.

A4

<script language="vb" runat="server">
Sub Page_Load()
     Dim integer1 As Integer
     Dim integer2 As Integer
     Dim Total As Integer

     integer1 = 10
     integer2 = 5

     Total = integer1 + integer2
'    Total = integer1 - integer2
'    Total = integer1 * integer2
End Sub
</script>

<html>
<body>
     ¿¬»êÀÇ °á°ú´Â :
     <asp:label id="Display1" runat="server" />
</body>
</html>

Chap 4 - Q5 : ÁÁ¾ÆÇÏ´Â °¡¼ö 5¸íÀÇ À̸§À» ÀúÀåÇÏ´Â ¹è¿­À» »ý¼ºÇϰí, ¹è¿­ÀÇ ¿ä¼ÒµéÀ» ÇϳªÀÇ ¹®ÀÚ¿­·Î ¿¬°áÇ϶ó. ÀÌ ¹®ÀÚ¿­À» '°¡Àå ÁÁ¾ÆÇÏ´Â °¡¼ö 5¸í: 'À̶ó´Â ¹®ÀåÀ¸·Î ½ÃÀÛÇϵµ·Ï ÇÏ¿© <asp:label> ÄÁÆ®·ÑÀ» ÀÌ¿ëÇÏ¿© Ãâ·ÂÇ϶ó.

A5

<script runat="Server" language="VB">
Sub Page_Load()
    Dim strArraySinger(4) As String

    strArraySinger(0) = "vangelis,"
    strArraySinger(1) = "À±»ó,"
    strArraySinger(2) = "ÀÌÇö¿ì,"
    strArraySinger(3) = "metallica,"
    strArraySinger(4) = "·¹ÀÌÁö º»."

    singers.Text = strArraySinger(0) & " " & strArraySinger(1) & " " & _
    strArraySinger(2) & " " & strArraySinger(3) & " " & _
    strArraySinger(4)
End Sub
</script>

<html>
<body>
    °¡Àå ÁÁ¾ÆÇÏ´Â °¡¼ö 5¸í:
    <br/>
    <asp:label id="singers" runat="server"/>
</body>
</html>

¢Ã 5Àå. XML ¼Ò°³

Chap 5 - Q1 : XMLÀÌ µ¥ÀÌÅ͸¦ ÀúÀåÇÏ´Â µ¥ À¯¿ëÇÑ ÀÌÀ¯¸¦ ¼³¸íÇ϶ó.

A1
XMLÀº ´ÙÀ½°ú °°Àº ÀÌÀ¯·Î ÀÎÇØ¼­ µ¥ÀÌÅ͸¦ ÀúÀåÇϴµ¥ À¯¿ëÇÏ°Ô »ç¿ëµÉ ¼ö ÀÖ´Ù.

  • ¸í½ÃÀûÀ¸·Î µ¥ÀÌÅ͸¦ ±¸Á¶È­ÇÏ´Â ¹æ¹ýÀ» Á¦°øÇÑ´Ù.
  • ±¸Á¶È­ °úÁ¤ÀÇ ÀϺηΠµ¥ÀÌÅÍÀÇ Àǹ̸¦ ¼³¸íÇÒ ¼ö ÀÖµµ·Ï ÇØÁØ´Ù.
  • Á÷°üÀûÀ̰í ÇØ¼®Çϱ⠽¬¿î ¹®¼­·Î ¸¸µé¾îÁø´Ù.

Chap 5 - Q2 : ´ÙÀ½ »ç¿ø Á¤º¸¸¦ °¡Áö´Â XML ÆÄÀÏÀ» »ý¼ºÇغ¸ÀÚ.
ȸ»ç: Á¤º¸¹®È­»ç

»ç¿ø: Hubert Welsch
»ç¿ø ¹øÈ£: 9862
¿¬¶ôó: ³»¼± - 346
Áý - 8764 35733
°æ·Â: 2 ³â
ºÎ¼­: ´å³Ý ÆÀ

»ç¿ø: Paul Crick
»ç¿ø ¹øÈ£: 7461
¿¬¶ôó: ³»¼± - 399
Áý - 2138 90346
°æ·Â: 8 °³¿ù
ºÎ¼­: ´å³Ý ÆÀ

»ç¿ø: Alison Freyer
»ç¿ø ¹øÈ£: 7849
¿¬¶ôó: ³»¼± - 982
Áý - 7893 42769
°æ·Â: 4 ³â
ºÎ¼­: ÀÚ¹Ù ÆÀ

»ç¿ø: Sandra Jackson
»ç¿ø ¹øÈ£: 9862
¿¬¶ôó: ³»¼± - 222
Áý - 8974 389743
°æ·Â: 1 ³â
ºÎ¼­: À繫

A2

<?xml version="1.0"?>

<company name="Á¤º¸¹®È­»ç">
  <employee name="Hubert Welsch" number="9862">
    <contact_numbers>
      <office>³»¼±.346</office>
      <home>8764 35733</home>
    </contact_numbers>
    <length_of_service>2 ³â</length_of_service>
    <department>´å³Ý ÆÀ</department>
  </employee>

  <employee name="Paul Crick" number="7461">
    <contact_numbers>
      <office>³»¼±.399</office>
      <home>2138 90346</home>
    </contact_numbers>
    <length_of_service>8 °³¿ù</length_of_service>
    <department>´å³Ý ÆÀ</department>
  </employee>

  <employee name="Alison Freyer" number="7849">
    <contact_numbers>
      <office>³»¼±.982</office>
      <home>7893 42769</home>
    </contact_numbers>
    <length_of_service>4 ³â</length_of_service>
    <department>ÀÚ¹Ù ÆÀ</department>
  </employee>

  <employee name="Sandra Jackson" number="9862">
    <contact_numbers>
      <office>³»¼±.222</office>
      <home>8974 389743</home>
    </contact_numbers>
    <length_of_service>1 ³â</length_of_service>
    <department>À繫</department>
  </employee>
</company>

Chap 5 - Q3 : ¿©·¯ºÐÀÌ »ý¼ºÇÑ XML ÆÄÀÏÀ» È­¸é¿¡ Ç¥½ÃÇϱâ À§ÇØ ÄɽºÄÉÀ̵ù ½ºÅ¸ÀÏ½ÃÆ®¸¦ »ý¼ºÇÑ´Ù. ¸ÚÁö°Ô Á¤º¸¸¦ Ç¥½ÃÇϱâ À§ÇØ ÆùÆ® ½ºÅ¸ÀÏ, Á¤·Ä, »ö»óÀ» »ç¿ëÇØº¸ÀÚ.

A3

employee
   display:block;
   background: #eeeecc;
   color: #7777bb;
   border-left:solid;
   border-top:solid;
   border-width:10;
   padding:10,10,10,10

name
   display:block;
   font-family: Arial, Helvetica;
   font-weight: bold;
   font-size: 12pt;
   background: #ffffee;
   color: #aa0066;
   border-bottom:solid;
   border-top:solid;
   border-width:4;

number
   display:inline;
   font-size: 8pt;
   font-weight: normal;
   color: #000000;

contact_numbers
   display:block;
   font-family: Verdana;
   font-size: 8pt;
   color: #336633;
   text-align: right;

office
   display:block;
   border-bottom:solid;
   border-width:1;

home
   display:block;
   border-bottom:solid;
   border-width:1;

length_of_service
   font-family: Arial, Helvetica;
   font-size: 12pt;
   color: black;

department
   font-family: Arial, Helvetica;
   font-size: 12pt;
   font-weight: bold;
   color: black;

Chap 5 - Q4 : ´ÙÀ½ÀÇ XML ¹®¼­´Â Àß ÀÛ¼º(well-formed)µÇ¾ú´Â°¡? ¸¸¾à ±×·¸Áö ¾Ê´Ù¸é, À߸øµÈ ºÎºÐÀ» ¼öÁ¤Çϰí, ÀÌ ºÎºÐÀÌ Àß ÀÛ¼ºµÈ ¹®¼­¸¦ »ý¼ºÇϴµ¥ ÇÊ¿äÇÑ ÀÌÀ¯¸¦ ¼³¸íÇØº¸ÀÚ.

(a)

<?xml version="1.0"?>
<shoppingList>
  <title>Shopping List</title>
  <items>
    <fruit items>
      <item>Rasberries</item>
      <item>Apples</item>
      <item>Oranges</item>
    </fruit_items>
    <vegetable_items>
      <item>Carrots</item>
      <item>Onions</item>
    </vegetable_items>
    <other_items>
      <item>Floor cleaner</item>
      <item>Bread</item>
      <item>Toothpaste</item>
      <item>Pasta</item)
    </other_items>
  </items>
</shoppingList>
<notes> Don't get cooking apples like last time and post letter to Harold</notes>

(b)

<?xml version="1.0">
<order>
  <salesperson>Sam Clarke</salesperson>
  <customer>Droutledge Waters</customer>
  <item>
    <description>snorkle</description>
    <quantity>37</quantity>
  </item>
  <date>
    <month>7</month>
    <day>6</day>
    <year>2001</year>
  </date>
</order>

A4
µÎ XML ¹®¼­ ¸ðµÎ Á¦´ë·Î Çü½ÄÈ­µÇ¾î ÀÖÁö ¾Ê´Ù.

(a)
½ÃÀÛ Å±×ÀÎ <fruit items>´Â ´Ý±â ű×ÀÎ </fruit_items>¿Í ½ÖÀ» ¸ÂÃß±â À§Çؼ­ <fruit_items>·Î º¯°æµÇ¾î¾ß ÇÑ´Ù. µÎ ¹®ÀÚ¸¦ ¿¬°áÇϱâ À§Çؼ­ ¹ØÁÙÀÌ ÇÊ¿äÇϸç, XML ¿ä¼Ò À̸§¿¡´Â ºó °ø°£ÀÌ µé¾î°¥ ¼ö ¾ø´Ù.

Items ¿ä¼Ò´Â ¹Ýµå½Ã ´Ý±â ű×ÀÎ </items>·Î ±¸ºÐµÇ¾î¾ß ÇÑ´Ù.

<?xml version="1.0"?>
<shoppingList>
  <title>Shopping List</title>
  <items>
    <fruit_items>
      <item>Rasberries</item>
      <item>Apples</item>
      <item>Oranges</item>
    </fruit_items>
    <vegetable_items>
      <item>Carrots</item>
      <item>Onions</item>
    </vegetable_items>
    <other_items>
      <item>Floor cleaner</item>
      <item>Bread</item>
      <item>Toothpaste</item>
      <item>Pasta</item>
    </other_items>
  </items>
  <notes> Don't get cooking apples like last time and post letter to Harold</notes>
</shoppingList>

(b)
XML ¹öÀü Áö½ÃÀÚ´Â ´Ý±â ±âÈ£ÀÎ >·Î ´Ý±â Àü¿¡ ¹°À½Ç¥¸¦ Ç¥±âÇØÁÖ¾î¾ß ÇÑ´Ù.

<?xml version="1.0"?>
<order>
  <salesperson>Sam Clarke</salesperson>
  <customer>Droutledge Waters</customer>
  <item>
    <description>snorkle</description>
    <quantity>37</quantity>
  </item>
  <date>
    <month>7</month>
    <day>6</day>
    <year>2001</year>
  </date>
</order>

Chap 5 - Q5 : b ºÎºÐÀ» º¸°í, ÆÇ¸ÅÀÚ Sam Clarke¸¦ ÅëÇØ µé¾î¿Â ÁÖ¹®À» È®ÀÎÇÒ ¼ö ÀÖµµ·Ï ÀÌ Á¤º¸¸¦ ´Ù½Ã Á¤·ÄÇØº¸ÀÚ. ±×¸®°í, Aqua Lake Enterprises¿¡¼­ ÁÖ¹®µÈ 12°³ÀÇ °í±Û¿¡ ´ëÇÑ ÁÖ¹®À» Ãß°¡Çغ¸ÀÚ.

A5
´ÙÀ½°ú °°ÀÌ Á¤º¸¸¦ ÀçÁ¤·ÄÇÏ¿© ¿µ¾÷ »ç¿øÀÎ Sam Clarke¸¦ ÅëÇØ¼­ µé¾î¿Â ÁÖ¹®À» È®ÀÎÇÒ ¼ö ÀÖ´Ù. ¿¹Á¦¿¡¼­ ¼³¸íÇÏ¿´´ø °Íó·³, ´Ù¸¥ ÁÖ¹®À» Ãß°¡ÇÏ¸é ´ÙÀ½°ú °°´Ù. 

<?xml version="1.0"?>
<salesperson name="Sam Clarke">
  <order>
    <customer>Droutledge Waters</customer>
    <item>
      <description>snorkle</description>
      <quantity>37</quantity>
    </item>
    <date>
      <month>7</month>
      <day>6</day>
      <year>2001</year>
    </date>
  </order>

  <order>
    <customer>Aqua Lake Enterprises</customer>
    <item>
      <description>goggles</description>
      <quantity>12</quantity>
    </item>
    <date>
      <month>7</month>
      <day>13</day>
      <year>2001</year>
    </date>
  </order>
</salesperson>

¡¡