lecture Home > ASP.NET > Taeyo's ASP.NET

Taeyo's ASP.NET

   °­Á ÃÖÃÊ ÀÛ¼ºÀÏ : 2003³â 02¿ù 18ÀÏ
   °­Á ÃÖÁ¾ ¼öÁ¤ÀÏ : 2003³â 02¿ù 19ÀÏ

   °­Á ÀÐÀ½ ¼ö : ȸ

   ÀÛ¼ºÀÚ : Taeyo(±è Å¿µ)
   ÆíÁýÀÚ : Taeyo(±è Å¿µ)

   °­Á Á¦¸ñ : Repeater Control (1)

°­Á Àü Å¿ÀÀÇ Àâ´ã>

GOGOGO ^^;


´ë»ó : ASP.NETÀÇ ±âº»ÀûÀÎ ÄÁÆ®·Ñ »ç¿ë¹ýÀ» ¶¾ À̵é.
¼±¼öÁö½Ä : ADO.NET ±âº» Áö½Ä.

Repeater ÄÁÆ®·ÑµéÀº ÅÛÇø´À» ±â¹ÝÀ¸·Î ÇÏ¿© µ¥ÀÌÅÍÀÇ ¹ÙÀÎµå ¸ñ·ÏÀ» ¸¸µå´Â ÄÁÆ®·ÑÀÔ´Ï´Ù. °¡Àå ´Ü¼øÇÑ ÇüÅÂÀÇ ¹Ù¿îµå ÄÁÆ®·ÑÀ̱⿡ »ç½Ç ´Ù·ç±â°¡ ±×¸® ¾î·ÆÁö ¾ÊÀº ÄÁÆ®·ÑÀ̱⵵ ÇÏÁö¿ä. ÀÌ ÄÁÆ®·ÑÀº ±âº»ÀûÀ¸·Î Á¦°øÇÏ´Â ·¹À̾ƿôÀ̳ª ½ºÅ¸ÀÏÀÌ ÀüÇô ¾øÀ¸¹Ç·Î, È­¸é Ãâ·Â°ú °ü°èµÈ ¸ðµç Äڵ带 °³¹ßÀÚ°¡ Á÷Á¢ ÀÛ¼ºÇؾ߸¸ ÇÑ´Ù´Â ´ÜÁ¡(?)ÀÌ ÀÖ½À´Ï´Ù.

¸¸ÀÏ, ¿©·¯ºÐÀÌ MSÀÇ À§Àúµå(¸¶¹ý»ç)¿Í °°Àº ÀÚµ¿ »ý¼ºµµ±¸¸¦ ÁÁ¾ÆÇÑ´Ù¸é ÀÌ ÄÁÆ®·ÑÀº ±×´ÙÁö ¸¾¿¡ µéÁö ¾ÊÀ» °Ì´Ï´Ù. ÄÁÆ®·ÑÀÌ º¸À¯ÇÑ ÀÚü±â´ÉÀº ±×¸® ¸¹Áö ¾ÊÀºµ¥´Ù°¡, ´ëºÎºÐÀÇ ±â´ÉÀ» °³¹ßÀÚ°¡ Çϵå ÄÚµùÀ¸·Î ÀÛ¼ºÇØ¾ß Çϱ⠶§¹®ÀÌÁÒ.

´ÙÀ½Àº Repeater ÄÁÆ®·ÑÀÇ ±âº» Æ÷¸ËÀÔ´Ï´Ù.

<asp:Repeater id="ÄÁÆ®·ÑÀÇ ID" runat=server>
    <HeaderTemplate>
        Header template HTML
    </HeaderTemplate>
    <ItemTemplate>
        Item template HTML
    </ItemTemplate>
    <AlternatingItemTemplate>
        Alternating item template HTML
    </AlternatingItemTemplate>
    <SeparatorTemplate>
        Separator template HTML
    </SeparatorTemplate>
    <FooterTemplate>
        Footer template HTML
    </FooterTemplate>
<asp:Repeater>

À§ÀÇ Äڵ忡¼­µµ º¼ ¼ö ÀÖ´Ù½ÃÇÇ, ÀÌ ÄÁÆ®·ÑÀº ³»ºÎ¿¡ ¿©·¯ Á¾·ùÀÇ Template ű׵éÀ» °¡Áý´Ï´Ù.

±×·¸´Ù¸é, ±×·¯ÇÑ ÅÛÇø´¿¡´Â ¾î¶°ÇÑ °ÍµéÀÌ ÀÖ´ÂÁö ¾Ë¾Æº¸´Â ½Ã°£À» °¡Á®º¸µµ·Ï ÇϰڽÀ´Ï´Ù. ÅÛÇø´ÀÇ Àǹ̳ª ¸ñÀûÀÌ Áö±Ý ´çÀåÀº ¸íÈ®ÇÏ°Ô ´À²¸ÁöÁö ¾ÊÀ» ¼öµµ ÀÖÁö¸¸, ÀÏ´ÜÀº ºÎ´ã¾øÀÌ »ìÆìº¸µµ·Ï Çϼ¼¿ä. ±¸Ã¼ÀûÀÎ »ç¿ë¹ýÀº ¿¹Á¦¸¦ ÅëÇØ¼­ ÀÍÈ÷°Ô µÉ °ÍÀ̴ϱî¿ä. ^^;

ÅÛÇø´ ¼³¸í
<HeaderTemplate> ¹ÙÀεåµÈ µ¥ÀÌÅͰ¡ ·»´õ¸µµÇ±â Àü¿¡ ¸ÕÀú Ãâ·ÂµÇ´Â ¿ä¼Ò·Î, ÁÖ·Î ¸Ó¸®¸» Á¤º¸¸¦ À§ÇØ »ç¿ëµÇ´Â ÅÛÇø´ÀÌ´Ù. ÀÌ ÅÛÇø´¿¡´Â µ¥ÀÌÅÍ ¹ÙÀε带 ÇÒ ¼ö ¾ø´Ù
<ItemTemplate> µ¥ÀÌÅÍ ¿øº»ÀÇ °¢ Çà¿¡ ´ëÇØ ÇÑ ¹ø ·»´õ¸µµÇ´Â ÅÛÇø´ÀÌ´Ù. ¾î¶² µ¥ÀÌÅ͸¦ ¾î¶² ÇüÅ·ΠǥÇöÇÒ °ÍÀÎÁö´Â ¿©·¯ºÐÀÌ ¹ÙÀεå Ç¥Çö½ÄÀ» »ç¿ëÇÏ¿© ÅÛÇø´ ³»¿¡ Á÷Á¢ ÀÛ¼ºÇØ ÁÖ¾î¾ß ÇÑ´Ù. ÀÌ´Â ÅÛÇø´ ±¸¼º ½Ã ÇʼöÀûÀ¸·Î ÇÊ¿äÇÑ ÅÛÇø´ÀÌ´Ù.
<AlternatingItemTemplate> ItemTemplate°ú ±â´ÉÀûÀ¸·Î´Â °°Áö¸¸, Ãâ·ÂµÇ´Â Ç׸ñÀ» °Ç³Ê¶Ù¸é¼­ Àû¿ëµÇ´Â ÅÛÇø´ÀÌ´Ù. Áï, Ãâ·ÂµÇ´Â 2,4,6 ¹øÂ° Ç׸ñÀ» À§Çؼ­ »ç¿ëÇÒ ¼ö ÀÖ´Â ÅÛÇø´ÀÌ´Ù.
<FooterTemplate> HeaderTemplate°ú´Â ¹Ý´ë·Î ²¿¸®¸» Á¤º¸¸¦ À§Çؼ­ »ç¿ëµÇ´Â ÅÛÇø´ÀÌ´Ù. ¿ª½Ã µ¥ÀÌÅÍ ¹ÙÀε尡 ºÒ°¡´ÉÇÏ´Ù.
<SeparatorTemplate> Ãâ·ÂµÇ´Â °¢°¢ÀÇ Ç׸ñ »çÀÌ¿¡ ·»´õ¸µµÇ´Â ÅÛÇø´ÀÌ´Ù. ÀÌ ÅÛÇø´ ¾È¿¡¼­µµ µ¥ÀÌÅÍ ¹ÙÀεå´Â ºÒ°¡´ÉÇÏ´Ù.

ÅÛÇø´ÀÇ ¿ªÇÒÀÌ Àß ÀÌÇØµÇÁö ¾Ê´Â´Ù¸é ´ÙÀ½ ±×¸²À» »ìÆìº¸µµ·Ï Çϼ¼¿ä. ÀÌ´Â ÄÁÆ®·Ñ¿¡ ÀÇÇØ <Table>ÀÌ Ãâ·ÂµÇ¾úÀ» °æ¿ì, °¢°¢ÀÇ ÅÛÇø´ÀÇ ¿ªÇÒÀ» µµ½ÄÀûÀ¸·Î ³ªÅ¸³½ ±×¸²À̶ø´Ï´Ù.

ÀÌ ±×¸²À¸·Îµµ ÀÌÇØ°¡ Àß °¡Áö ¾Ê´Â´Ù¸é ´ÙÀ½ ±×¸²Àº ¾î¶»½À´Ï±î? À̰ÍÀº ½ÇÁ¦·Î µ¥ÀÌÅͰ¡ Ãâ·ÂµÈ Å×À̺íÀ» ´ë»óÀ¸·Î ÅÛÇø´ÀÇ ¿ªÇÒÀ» ³ªÅ¸³» º» ±×¸²À̶ø´Ï´Ù.

°¢°¢ÀÇ ÅÛÇø´¿¡ ´ëÇÑ ½ÇÁ¦ÀûÀÎ »ç¿ë¹æ¹ýÀº ¿¹Á¦¸¦ ÅëÇØ¼­ ÀÌÇØÇϵµ·Ï Çϱ¸¿ä.. À̹ø¿¡´Â Repeater ÄÁÆ®·ÑÀÇ Áß¿äÇÑ ¼Ó¼º°ú ¸Þ¼­µå, À̺¥Æ®¿¡ ´ëÇØ¼­ ¾Ë¾Æº¸°Ú½À´Ï´Ù.

¼Ó¼º ¼³¸í
DataMember ÄÁÆ®·Ñ¿¡ ¹ÙÀεùÇÒ DataSource ³»ÀÇ Æ¯Á¤ Å×À̺í.
DataSource ÄÁÆ®·Ñ¿¡ ¹ÙÀεåÇÒ µ¥ÀÌÅÍ ¿øº».
¸Þ¼­µå ¼³¸í
DataBind ½ÇÁ¦·Î µ¥ÀÌÅ͸¦ ¼­¹ö ÄÁÆ®·Ñ·Î ¹ÙÀεùÇÏ´Â ¸Þ¼­µå
À̺¥Æ® ¼³¸í
ItemCommand ÄÁÆ®·Ñ ±¸¿ª ³»¿¡¼­ ¹öưÀÌ Å¬¸¯µÇ´Â °æ¿ì ¹ß»ýÇÏ´Â À̺¥Æ®.
ItemCreated RepeaterÀÇ ÄÁÆ®·Ñ¿¡ Ç׸ñÀ» ¸¸µå´Â °æ¿ì ¹ß»ýÇÏ´Â À̺¥Æ®
ItemDataBound RepeaterÀÇ Ç׸ñÀ» ¹ÙÀεù ÇÑ ´ÙÀ½ ÆäÀÌÁö¿¡ ·»´õ¸µÇϱâ Àü¿¡ ¹ß»ýÇÏ´Â À̺¥Æ®

¹°·Ð, À§ÀÇ ¸ñ·ÏÀÌ Repeater ÄÁÆ®·ÑÀÇ Àüü ¼Ó¼º°ú ¸Þ¼­µå´Â ¾Æ´Õ´Ï´Ù. ´ÜÁö, ÀÚÁÖ »ç¿ëµÇ´Â ±â´Éµé¸¸À» Á¤¸®ÇÑ °ÍÀÌÁÒ. Repeater ÄÁÆ®·Ñ¿¡ µ¥ÀÌÅ͸¦ ¹ÙÀεåÇϱâ À§Çؼ­´Â Àû¾îµµ À§ÀÇ ¼Ó¼º Áß DataSource ¼Ó¼º¿¡ ´ëÇØ¼­´Â °ªÀ» ¼³Á¤ÇØ ÁÖ¾î¾ß Çϱ¸¿ä. ±×¸®°í ³­ ´ÙÀ½, DataBind() ¸Þ¼­µå¸¦ ÅëÇØ¼­ ½ÇÁ¦ÀûÀÎ ¹ÙÀεùÀ» ¼öÇàÇØ¾ß¸¸ ÇÕ´Ï´Ù. ÀÌ µÑÀÇ ÁöÁ¤Àº Çʼö¿¡ °¡±õ´Ù´Â °ÍÀ» ±â¾ïÇϼ¼¿ä.

Á¤¸®ÇÏÀÚ¸é, Repeater ÄÁÆ®·ÑÀ» »ç¿ëÇÏ¿© µ¥ÀÌÅ͸¦ ¹ÙÀεùÇϰíÀÚ ÇÏ´Â °æ¿ì¿¡´Â ´ÙÀ½°ú °°Àº ´Ü°è¸¦ µû¸£´Â °ÍÀÌ ÁÁ½À´Ï´Ù.

1. À¥ Æû À§¿¡ Repeater ÄÁÆ®·ÑÀ» Çϳª ¿Ã·Á³õ´Â´Ù.
2. ¹ÙÀεåÇÒ µ¥ÀÌÅÍ ¿øº»À» °èȹÇÑ´Ù.
    ÀÌ´Â ´ëºÎºÐÀÇ °æ¿ì µ¥ÀÌÅͺ£À̽º¿¡¼­ SELECT ÁúÀÇ·Î °¡Á®¿Â ºä Å×À̺íÀÌ µÉ °ÍÀÌ´Ù.
    ±× ´ÙÀ½, ÄÚµå ºñÇÏÀÎµå ÆäÀÌÁöÀÇ Äڵ忡¼­ µ¥ÀÌÅÍ ¿øº»À» Repeater ÄÁÆ®·ÑÀÇ DataSource ¼Ó¼ºÀ¸·Î
    ¹­¾îÁÖ°í, DataBind() ¸Þ¼­µå¸¦ È£ÃâÇϵµ·Ï ÇÑ´Ù.
3. Æû µðÀÚÀ̳ÊÀÇ HTML ¸ðµå¿¡¼­ Repeater ÄÁÆ®·ÑÀÇ ÅÛÇø´À» ÀÛ¼ºÇÑ´Ù.

±×·¸´Ù¸é, À§ÀÇ ¼ø¼­¿¡ µû¶ó Á÷Á¢ ¿¹Á¦¸¦ ÅëÇÏ¿© Repeater ÄÁÆ®·ÑÀ» ´Ù·ç¾î º¸°Ú½À´Ï´Ù. ¿©·¯ºÐÀÇ ÇÁ·ÎÁ§Æ®¿¡ RepeaterEx1.aspx ¶ó´Â À̸§ÀÇ À¥ Æû ÆäÀÌÁö¸¦ Çϳª Ãß°¡Çϰí, ´ÙÀ½ ±×¸²°ú °°ÀÌ Repeater ÄÁÆ®·ÑÀ» [µµ±¸»óÀÚ]·ÎºÎÅÍ µå·¡±× ¾Ø µå·ÓÇÏ¿© À¥ Æû À§¿¡ ¿Ã·Á³õ¾Æ º¸¼¼¿ä..

ÀÌÁ¦ ÄÚµå ºñÇÏÀÎµå ÆäÀÌÁö·Î À̵¿ÇÏ¿© Page_Load À̺¥Æ® 󸮱⿡ ´ÙÀ½°ú °°Àº Äڵ带 ÀÛ¼ºÇØ ÁÖ¼¼¿ä.

private void Page_Load(object sender, System.EventArgs e)
{
    string connectStr = "Server=(local); database=Pubs; user id=sa";
    //À§ÀÇ µ¥ÀÌÅͺ£À̽º ¿¬°á ¹®ÀÚ¿­Àº ¿©·¯ºÐÀÇ »óȲ¿¡ ¸Â°Ô ±¸¼ºÇØ ÁÖ¼¼¿ä
    SqlConnection Con = new SqlConnection(connectStr);
    SqlDataAdapter Adap = new SqlDataAdapter("Select Top 5 * from titles", Con);

    DataSet ds = new DataSet();
    Adap.Fill(ds, "titles");

    Repeater1.DataSource = ds;
    Repeater1.DataMember = "titles";
    Repeater1.DataBind();
}

ÀÌ ÄÚµå´Â Pubs µ¥ÀÌÅͺ£À̽º ³» titles Å×À̺íÀÇ »óÀ§ 5°³ÀÇ ·¹Äڵ带 DataSetÀ¸·Î °¡Á®¿Í¼­, Repeater ÄÁÆ®·ÑÀÇ DataSource ¼Ó¼ºÀ¸·Î ¹­°í, DataBind()¸¦ ¼öÇàÇÏ´Â ÄÚµåÀÔ´Ï´Ù. (ADO.NETÀ» °øºÎÇϼ̴ٸé ÀÌ¹Ì ¾Ë°í ÀÖ°ÚÁö¸¸, SQL Server .NET µ¥ÀÌÅÍ °ø±ÞÀÚ¸¦ »ç¿ëÇϱâ À§Çؼ­´Â using System.Data.SqlClient; ¸¦ ³×ÀÓ½ºÆäÀ̽º ÂüÁ¶ ±¸¿ª¿¡ Ãß°¡ÇØ ÁÖ¾î¾ß ÇÕ´Ï´Ù. Àؾú´Ù¸é Áö±Ý ÄÚµùÇϽñ⠹ٶø´Ï´Ù)

À§ÀÇ ¼Ò½º´Â ¿©·¯ºÐÀÌ ADO.NETÀÇ ±âÃÊÆíÀ» °øºÎÇÏ¼Ì´Ù¸é ±×´ÙÁö ¾î·ÆÁö ¾ÊÀ» °ÍÀÔ´Ï´Ù. (Âü°í·Î, ADO.NET °­Á´ ´ÙÀ½ ¸µÅ©¿¡¼­ Á¶±ÝÀ̳ª¸¶ È®ÀÎÇØ º¼ ¼ö ÀÖ½À´Ï´Ù)

±ôÂïÀÌ´ÔÀÇ ADO.NET °­ÁÂ

±»ÀÌ ¹Ýº¹Çؼ­ ¼³¸íÇÑ´Ù¸é, ÄÚµå´Â ¸ÕÀú µ¥ÀÌÅͺ£À̽º ¿¬°á ¹®ÀÚ¿­À» °¡Áö°í, Connection °³Ã¼¸¦ »ý¼ºÇϰí ÀÖÀ¸¸ç, ´ÙÀ½À¸·Î DataAdapter °³Ã¼¸¦ »ý¼ºÇϸ鼭, ³»ºÎÀûÀ¸·Î "Select Top 5 * from titles"¶ó´Â ÁúÀǸ¦ ¼öÇàÇÏ´Â Command °³Ã¼¸¦ »ý¼ºÇϰí Connection °³Ã¼¿Í ¿¬°áÇÕ´Ï´Ù. ±×¸®°í ³­ ´ÙÀ½, DataAdapterÀÇ ¼öÇà°á°ú¸¦ ´ã±â À§ÇÑ DataSet °³Ã¼¸¦ Çϳª »ý¼ºÇϰí ÀÖÀ¸¸ç, DataAdapter °³Ã¼ÀÇ Fill ¸Þ¼­µå¸¦ ÅëÇØ¼­ Select ÁúÀÇÀÇ ¼öÇà°á°ú¸¦ "titles" ¶ó´Â À̸§À¸·Î DataSet¿¡ ´ã°í ÀÖÁÒ. ±×·¯¹Ç·Î, ÇöÀç ½ÃÁ¡¿¡¼­ DataSetÀº titles ¶ó´Â À̸§ÀÇ ÇϳªÀÇ ºä Å×À̺íÀ» ¸Þ¸ð¸®»ó¿¡ º¸À¯ÇÏ°Ô µÇ´Â °ÍÀÔ´Ï´Ù. (¾î·Æ³ª¿ä?)

Âü°í!!

¸¸ÀÏ, ¿©·¯ºÐÀÇ ¿­È­¿Í °°Àº ¿äûÀÌ À̾îÁø´Ù¸é, ADO.NET¿¡ ´ëÇÑ °­Áµµ ÁøÇàÇØ º¸µµ·Ï ÇϰڽÀ´Ï´Ù. ÇÏÁö¸¸, Á¦°¡ ½ÇÁ¦·Î ÁøÇàÇÏ°í ½ÍÀº °­Á´ °èÃþÇü °Ô½ÃÆÇ ¸¸µé±â³ª, ¼îÇθô ¸¸µé±â µîÀÇ ½ÇÀü ÇÁ·Î±×·¥ ÅÛÇø´À̱⿡ °¡±ÞÀûÀ̸é ADO.NET°ú °ü°èµÈ ºÎºÐÀº ¿©·¯ºÐÀÌ º°µµ·Î °øºÎ¸¦ ÁøÇàÇØ º¸½Ã±â¸¦ ÃßõÇÕ´Ï´Ù. ¹°·Ð, ½ÇÀü ÅÛÇø´À» ÁøÇàÇϸ鼭µµ ADO.NETÀ» ÀÚÁÖ °Å·ÐÇÒ °ÍÀ̱â´Â ÇÕ´Ï´Ù¸¸ ¸»ÀÔÁÒ~~~

¹°·Ð, ADO.NET¿¡ ´ëÇØ¼­´Â Å¿ÀÀÇ À̹ø ASP.NET Ã¥À» ±¸ÀÔÇØ¼­ º¸½Ã¸é ¸Å¿ì Àß ³ª¿ÍÀÖ½À´Ï´Ù!!!! °áÈ¥ ÈÄ ¾å»ðÇØÁø Å¿À. ÀÌÁ¦ Ã¥¿¡ ´ëÇÑ ±¤°íµµ ¼­½¿Ä¡ ¾Ê´Â »·»·ÇÔÀ» º¸À̰í ÀÖ½À´Ï´Ù. KEKE~~

°­Ãß!! Taeyo's ASP.NET v1.0 with C# .......       -_-a

ÇÊ¿äÇÑ µ¥ÀÌÅ͸¦ ¸Þ¸ð¸®·Î °¡Á®¿ÔÀ¸¹Ç·Î ÀÌÁ¦ ÇÊ¿äÇÑ ÀÛ¾÷Àº ±× µ¥ÀÌÅ͸¦ Repeater ÄÁÆ®·Ñ¿¡ ¹ÙÀεå ÇÏ´Â °ÍÀÔ´Ï´Ù. À̾îÁö´Â ¼Ò½º°¡ ¹Ù·Î ±×·¯ÇÑ ÄÚµåÀ̸ç, À̹ø ¿¹Á¦¿¡¼­ °¡Àå ÁÖ¸ñÇÒ¸¸ÇÑ ºÎºÐÀÌÁö¿ä.. ÁÖ¸ñ ÁÖ¸ñ!!

Repeater1.DataSource = ds;
Repeater1.DataMember = "titles";
Repeater1.DataBind();

¸ÕÀú, Repeater ÄÁÆ®·ÑÀÇ DataSource ¼Ó¼ºÀ¸·Î½á DataSetÀ» ÁöÁ¤Çϰí ÀÖÀ¸¸ç, DataMember ¼Ó¼º°ªÀ¸·Î´Â DataSet ³»¿¡ Á¸ÀçÇÏ´Â ºä Å×À̺í Áß "titles"¸¦ ÁöÁ¤Çϰí ÀÖ½À´Ï´Ù. ÇöÀç DataSet ³»¿¡´Â ¿ÀÁ÷ "titles" Å×À̺í Çϳª¸¸ÀÌ Á¸ÀçÇϰí ÀÖ´Ù°í ÇØµµ ÀÌ´Â ¹Ýµå½Ã ÁöÁ¤ÇØ ÁÖ¾î¾ß ÇÕ´Ï´Ù.

±×¸®°í, DataBind() ¸Þ¼­µåÀÇ È£ÃâÀÌ À̾îÁý´Ï´Ù. ½ÇÁ¦ÀûÀ¸·Î µ¥ÀÌÅ͸¦ ¹ÙÀεåÇÏ´Â ½ÃÁ¡ÀÌ ¹Ù·Î DataBind() ¸Þ¼­µå°¡ È£ÃâµÇ´Â ¶§À̹ǷÎ, ÀÌ Äڵ尡 °¡Àå Áß¿äÇÑ ÄÚµå¶ó°í º¼ ¼ö ÀÖ½À´Ï´ç...

»ç½Ç, À§ÀÇ Äڵ忡¼­ Repeater °³Ã¼ÀÇ DataMember ¼Ó¼ºÀ» ¹Ýµå½Ã »ç¿ëÇØ¾ß ÇÏ´Â °ÍÀº ¾Æ´Ï±ä ÇÕ´Ï´Ù. ´ÙÀ½°ú °°ÀÌ DataSource ¼Ó¼ºÀ» Á¶±Ý ´õ ±¸Ã¼ÀûÀ¸·Î ÀÛ¼ºÇÑ´Ù¸é ¸»ÀÌÁÒ.

Repeater1.DataSource = ds.Tables["titles"];
Repeater1.DataBind();

ÀÌÁ¦ ÄÚµå ºñÇÏÀÎµå ÆäÀÌÁöÀÇ ÀÛ¼ºµµ ¸ðµÎ ³¡³µ³×¿ä. ÆäÀÌÁö¸¦ ½ÇÇàÇÒ °æ¿ì, ½ÇÁ¦·Î ÀÌ ÄÚµåµéÀº ¼öÇàµÉ °ÍÀ̸ç, Repeater ÄÁÆ®·Ñ¿¡ °á°ú µ¥ÀÌÅ͵éÀÌ ¸ÚÁö°Ô ¹ÙÀεåµÉ °ÍÀÓÀ» ¿©·¯ºÐÀº È®½ÅÇÒ ¼ö ÀÖÀ» °ÍÀÔ´Ï´Ù. ¹Ù¶ß ±×·¯³ª!! ´çȲ½º·´°Ôµµ È­¸é¿¡´Â ±× ¾î¶°ÇÑ µ¥ÀÌÅ͵µ Ãâ·ÂµÇÁö ¾ÊÀ» °ÍÀÔ´Ï´Ù. Å©ÇÖÇÖ!

"¾ÆÀ¯~~ Àç¼·¶°.. ¿ô±æ¶ó±¸ ±¦È÷ Àå³­Ä¡Áö ¸»±¸ ¾î¼­ ÀÌÀ¯³ª ¸»ÇØÁà. ³ÊÀÇ À¯Ä¡ÇÑ °³±×´Â Çϳªµµ Àë¾÷¶°~"

"-_-+ ........ À½... ±×·±..°Å .. ¿´.. ±º..¿ä"

¸»¾¸µå¸®±â ½È¾îÁö°í ÀÖÁö¸¸, ±×·¡µµ ¸¾ ÂøÇÑ Á¦°¡ Âü¾Æ¼­ ¸»¾¸µå¸®¸é... ÀÌÀ¯´Â °¢°¢ÀÇ µ¥ÀÌÅ͵éÀÌ ¾î¶»°Ô Ãâ·ÂµÇ¾î¾ß ÇÏ´ÂÁö¸¦ ¾ÆÁ÷ Á¤ÀÇÇØ ³õÀº °ÍÀÌ ¾ø±â ¶§¹®ÀÔ´Ï´Ù. ¹ÙÀεåÇÏ´Â Äڵ常À¸·Î ½ÇÁ¦ µ¥ÀÌÅͰ¡ Ãâ·ÂµÇ´Â °ÍÀº ¾Æ´Ï°Åµç¿ä. ¿ÏÀüÇÏ°Ô ¹ÙÀεåµÈ °á°ú¸¦ ¾ò±â À§Çؼ­´Â µ¥ÀÌÅͰ¡ ¾î¶² ÇüÅ·ΠÃâ·ÂµÇ¾î¾ß ÇÒ Áö¸¦ ¹Ì¸® Á¤ÀÇÇØ µÎ¾î¾ß¸¸ ÇÑ´ä´Ï´Ù.

±×·¸´Ù¸é, À̸¦ À§ÇØ ÇØ¾ß ÇÒ ÀÛ¾÷Àº ¹«¾ùÀϱî¿ä? ±×·¸½À´Ï´Ù. ¹Ù·Î ÅÛÇø´À» ÀÛ¼ºÇÏ´Â °ÍÀÔ´Ï´Ù. ´Ù½Ã±Ý À¥ Æû µðÀÚÀ̳ʷΠµ¹¾Æ¿Àµµ·Ï ÇØ¿ä. ±×¸®°í, À¥ Æû µðÀÚÀ̳ʿ¡ ³õ¿©Áø Repeater ÄÁÆ®·Ñ¿¡ ³ªÅ¸³ª°í ÀÖ´Â ¹®ÀåÀ» Çѹø Àо¼¼¿ä. ÅÛÇø´À» ÀÛ¼ºÇϱâ À§Çؼ­ ÇØ¾ßÇÒ ÀÏÀÌ ¹«¾ùÀÎÁö¸¦ ÄÁÆ®·ÑÀÌ Ä£ÀýÇÏ°Ô ¾Ë·ÁÁÖ°í ÀÖÀ» °Ì´Ï´Ù.

±×·¸´Ù¸é, ÀÌÁ¦ ÄÁÆ®·ÑÀÌ ÇØ´Þ¶ó´Â ´ë·Î HTML ¸ðµå·Î ÀüȯÇÏ¿© ´ÙÀ½°ú °°ÀÌ Repeater ÄÁÆ®·ÑÀÇ ÅÛÇø´ ÄÚµåµéÀ» ÀÛ¼ºÇØ º¸µµ·Ï ÇØ¿ä~.

<asp:Repeater id="Repeater1" runat="server">
    <HeaderTemplate>
        <p><b>¿À´ÃÀÇ ½Å°£</b></p>
    </HeaderTemplate>
    <ItemTemplate>
        <p>
            Á¦¸ñ : <%# ((DataRowView)Container.DataItem)["title"] %><br />
            °¡°Ý : <%# ((DataRowView)Container.DataItem)["Price"] %>
        </p>
    </ItemTemplate>
    <SeparatorTemplate>
        <hr align="left" size="1" width="500">
    </SeparatorTemplate>
    <FooterTemplate>
        <hr>
    </FooterTemplate>
</asp:Repeater>

Repeater ÄÚµå ³»ºÎ¿¡ ¿©·¯ °³ÀÇ ÅÛÇø´µéÀ» ÀÛ¼ºÇØ º¸¾Ò´Âµ¥, ±×µéÀº °¢°¢ HeaderTemplate, ItemTemplate, SeparatorTemplate, FooterTemplate ÀÔ´Ï´Ù. HeaderTemplateÀº µ¥ÀÌÅÍ ¹ÙÀε尡 ºÒ°¡´ÉÇϸç, Ãâ·Â ½Ã °¡Àå »ó´Ü¿¡ ´Ü Çѹø Ãâ·ÂµÇ´Â ÅÛÇø´À̱¸¿ä. ÅÛÇø´ Áß ItemTemplateÀÌ ¸ÞÀÎÀÌ µÇ´Â ÅÛÇø´Àε¥, ÀÌ´Â DataSource·Î ÁöÁ¤µÈ ºä Å×À̺íÀÇ ·¹ÄÚµå ¼ö ¸¸Å­ ¹Ýº¹µÇ¸é¼­ µ¥ÀÌÅÍ ¹ÙÀε带 ¼öÇàÇÏ´Â ÅÛÇø´ÀÔ´Ï´Ù. ItemTemplate ³»ºÎ¿¡´Â ´ÙÀ½°ú °°Àº ¹ÙÀεù Ç¥Çö½ÄÀÌ ³õ¿©Á® ÀÖ´Â °ÍÀ» º¼ ¼ö ÀÖ¾î¿ä.

<p>
Á¦¸ñ : <%# ((DataRowView)Container.DataItem)["title"] %><br />
°¡°Ý : <%# ((DataRowView)Container.DataItem)["Price"] %>
</p>

Áï, °¢°¢ÀÇ ÇàÀ» ¹Ýº¹Çϸ鼭 ±× ÇàÀÇ title Ä÷³°ú price Ä÷³ÀÇ °ªÀ» Ãâ·ÂÇÏ´Â ÄÚµåÀÎ °Ì´Ï´Ù. ¹°·Ð, ÀÌ ÄÚµå´Â Eval ¸Þ¼­µå¸¦ »ç¿ëÇÏ´Â ´ÙÀ½°ú °°Àº ¹æ¹ýÀ¸·Î ´ë½ÅÇÒ ¼öµµ ÀÖ¾î¿ä.

<p>
Á¦¸ñ : <%# DataBinder.Eval(Container.DataItem, "title") %> <br />
°¡°Ý : <%# DataBinder.Eval(Container.DataItem, "Price") %>
</p>

SeparatorTemplateÀº °¢°¢ÀÇ Ç׸ñ »çÀÌ¿¡ ³õ¿©Áö´Â ÅÛÇø´À¸·Î µ¥ÀÌÅÍ ¹ÙÀεùÀÌ ºÒ°¡´ÉÇÑ ÅÛÇø´ÀÔ´Ï´Ù. ´ëºÎºÐÀÇ °æ¿ì, ÀÌ ÅÛÇø´ ¾È¿¡´Â ±¸ºÐÀÚ·Î »ç¿ëÇÒ¸¸ÇÑ °ÍµéÀÌ ³õ¿©ÁöÁÒ. ¿¹¸¦ µé¸é, ¼öÆò ¶óÀÎ °°Àº °Íµé ¸»ÀÔ´Ï´Ù.

¹Ý¸é, FooterTemplateÀº Ãâ·Â½Ã °¡Àå ¹Ø ´Ü¿¡ ´Ü Çѹø ³õ¿©Áö´Â ÅÛÇø´À̸ç, ¿ª½Ã µ¥ÀÌÅÍ ¹ÙÀεùÀº ºÒ°¡´ÉÇÕ´Ï´Ù. Äڵ带 ¸ðµÎ ÀÛ¼ºÇß´Ù¸é, ÆäÀÌÁö¸¦ ÄÄÆÄÀÏÇÏ°í ½ÇÇàÇØ º¸µµ·Ï Çϼ¼¿ä.

¾ù? ±×·¸½À´Ï´Ù. ¿¹¿Ü°¡ ¹ß»ýÇÒ °ÍÀÔ´Ï´Ù. ¾î°¼­ ÀÌ·± ÀÏÀÌ?? Å¿À°¡ Ç϶ó´Â ´ë·Î ÇÏ¸é ¾ðÁ¦³ª ¹®Á¦ Åõ¼ºÀÌ??? -_-+

»ç½Ç ¿¹¿ÜÀÇ ÀÌÀ¯´Â ÇöÀç ¿ì¸®°¡ À¥ Æû ÆäÀÌÁö¿¡¼­ »ç¿ëÇϰí ÀÖ´Â ´ÙÀ½°ú °°Àº Çü º¯È¯ ÄÚµå ¶§¹®´Ï´Ù.

((DataRowView)Container.DataItem)["title"]

DataRowView ¶ó´Â ŸÀÔÀ» ÇöÀçÀÇ À¥ Æû ÆäÀÌÁö¿¡¼­´Â ÀÌÇØÇÒ ¼ö°¡ ¾ø±â ¶§¹®¿¡ ¿¹¿Ü°¡ ¹ß»ýÇÑ °ÍÀÔÁÒ. °í·Î, ÀÌ ¹®Á¦¸¦ ÇØ°áÇÏ·Á¸é, ÇöÀçÀÇ À¥ Æû ÆäÀÌÁö¿¡ DataRowView ¶ó´Â °³Ã¼¸¦ °¡Áö°í ÀÖ´Â System.Data¶ó´Â ³×ÀÓ½ºÆäÀ̽º¸¦ ÀÓÆ÷Æ® ÇØ ÁÖ¾î¾ß ÇÑ´ä´Ï´Ù.

¾à°£Àº ÀǾƽº·¯¿ï ¼öµµ ÀÖÀ» °ÍÀ̶ó »ý°¢ÇØ¿ä. ±×µµ ±×·² °ÍÀÌ System.Data ³×ÀÓ½ºÆäÀ̽º´Â ÀÌ¹Ì ÄÚµå ºñÇÏÀÎµå ÆäÀÌÁö¿¡ Ãß°¡µÇ¾î ÀÖ´Â »óÅÂÀ̴ϱñ ¸»ÀÌÁÒ. ÇÏÁö¸¸, À¥ Æû ÆäÀÌÁö¿Í ÄÚµå ºñÇÏÀÎµå ÆäÀÌÁö´Â ºÐ¸®µÈ ÆäÀÌÁö¶ó´Â Á¡À» ±â¾ïÇϼ¼¿ä. ¿ì¸®´Â ÇöÀç ÄÚµå ºñÇÏÀÎµå ÆäÀÌÁö°¡ ¾Æ´Ñ À¥ Æû ÆäÀÌÁö³»¿¡¼­ DataRowView ¶ó´Â µ¥ÀÌÅÍ Å¸ÀÔÀ» »ç¿ëÇÏ·Á Çϰí ÀÖ½À³ª´Ù. ±×·¯¹Ç·Î, À¥ Æû ÆäÀÌÁö¿¡ Á÷Á¢ ÂüÁ¶¸¦ Ãß°¡ÇØ ÁÖ¾î¾ß ÇÏ´Â °ÍÀÔ´Ï´Ù.

HTML ÄÚµå Áß <%@Page %> Áö½ÃÀÚ ±¸¿ª ´ÙÀ½À¸·Î System.Data ³×ÀÓ½ºÆäÀ̽º¸¦ ÂüÁ¶ÇÏ´Â ´ÙÀ½°ú °°Àº Äڵ带 Ãß°¡Çϵµ·Ï Çϼ¼¿ä.

<%@ Page language="c#" Codebehind="RepeaterEx1.aspx.cs" AutoEventWireup="false" Inherits="TaeyoAspNet.RepeaterEx1" %>
<%@ Import NameSpace="System.Data" %>
...

¹°·Ð, ¿©·¯ºÐÀÌ DataRowView·Î Çü º¯È¯ÇÏ¿© Ãâ·ÂÇÏ´Â ¹æ¹ý ´ë½Å¿¡ Eval ¸Þ¼­µå¸¦ »ç¿ëÇÏ´Â ¹æ¹ýÀ» ¼±ÅÃÇß´Ù¸é ÀÌ¿Í °°Àº ºÎ°¡ÀûÀÎ ÀÛ¾÷Àº ÇÊ¿äÄ¡ ¾Ê½À´Ï´Ù. ¾î¼¸é, ±×·¯ÇÑ ±×·¯ÇÑ ÀÌÀ¯·Î ¸¹Àº °³¹ßÀÚµéÀÌ Eval ¸Þ¼­µå¸¦ »ç¿ëÇÏ¿© ¹ÙÀεåÇÏ´Â ¹æ¹ýÀ» ¼±È£ÇÏ´Â °Í °°±âµµ ÇÕ´Ï´Ù.(Eval ¸Þ¼­µå¸¦ »ç¿ëÇÏ´Â ¹æ¹ýÀº ´ÙÀ½ ½Ã°£¿¡ ¾Ë¾Æº¼ °Ì´Ï´Ù¿ä~~~)

¾î·µç ÀÌÁ¦, ´Ù½Ã±Ý ÄÄÆÄÀÏ ÇÏ°í ½ÇÇàÇØ º¸µµ·Ï ÇØ¿ä. À̹ø¿¡´Â ´ÙÀ½°ú °°ÀÌ Á¦´ë·Î µÈ °á°ú¸¦ ¾òÀ» ¼ö ÀÖÀ» °Ì´Ï´ç~

±×¸®°í, °á°ú¿¡¼­ ÅÛÇø´ÀÌ °¢°¢ Àû¿ëµÈ ºÎºÐÀ» Ç¥½ÃÇÏ¸é ´ÙÀ½ ±×¸²°ú °°¾Æ¿ä.

Repeater ÄÁÆ®·ÑÀÇ ÅÛÇø´ »ç¿ë¹ýÀÌ Á¶±Ý¾¿ ÀÌÇØ°¡ µÇ±â ½ÃÀÛÇÒ °ÍÀÔ´Ï´Ù. (¾Æ´Ï¶ó¸é.. ¼­¿îÇÑ °É¿ä~)

ÅÛÇø´À̶ó°í ÇÏ´Â °ÍÀº °á±¹ Ãâ·Â °á°úÀÇ ÀϺθ¦ ±¸¼ºÇÏ´Â Á¶°¢µéÀÎ °ÍÀÔ´Ï´Ù. HeaderTemplate ¹× FooterTemplateÀº Àüü Ãâ·Â °á°úÀÇ À­ ´Ü°ú ¹Ø ´Ü¿¡ °¢°¢ ÇÑ ¹ø¾¿¸¸ Ãâ·ÂµÇ´Â ±¸¿ªÀ» ÀǹÌÇϸç, ItemTemplateÀº ¸ðµç Ãâ·Â Çà¿¡ Àû¿ëµÇ´Â ±¸¿ª, SeparatorTemplateÀº °¢°¢ÀÇ Ç׸ñ »çÀÌ»çÀ̸¦ Ãâ·ÂÇÏ´Â ¿ªÇÒÀ» ´ã´çÇÏ´Â °ÍÀÌÁÒ.

ÀÌ »ç½ÇÀ» Àß ±â¾ïÇØ µÎ¾î¾ß ÇÕ´Ï´Ù. ¸ðµç ¹Ù¿îµå ÄÁÆ®·ÑµéÀÌ ÅÛÇø´À» »ç¿ëÇÏ´Ï ¸»ÀÔ´Ï´Ù!!

 

°­Á ¸ñ·ÏÀ¸·Î..