source

MVC와 같은 WebForms에서 데이터를 루프하는 방법

manycodes 2023. 8. 4. 23:11
반응형

MVC와 같은 WebForms에서 데이터를 루프하는 방법

ASP에서처럼 웹 양식의 데이터를 순환하려면 어떻게 해야 합니까?NET MVC?예를 들어 MVC의 경우 다음과 같이 간단합니다.

<table>
    @foreach (var myItem in g)
    { 
        @<tr><td>@MyItem.title<td></tr>
    }
</table>

뒤에 있는 코드는 어떻게 보입니까?

아니면 MVC 기능을 대신 사용할 수 있도록 MVC 프로젝트를 WebForms 응용 프로그램에 추가할 수 있습니까?

리피터를 사용하는 대신 유사한 MVC 유형의 방법으로 목록을 루프할 수 있습니다.<% %>그리고.<%= %>꼬리표

<table>
  <% foreach (var myItem in g) { %>
    <tr><td><%= myItem.title %></td></tr>
  <% } %>
</table>

루프하는 속성이 aspx/ascx 페이지(예: 보호됨 또는 공용으로 선언됨)에서 액세스할 수 있는 경우 루프할 수 있습니다.필요한 코드 뒤에 다른 코드가 없습니다.

<% %>코드를 평가할 것입니다.<%= %>결과를 출력합니다.

다음은 가장 기본적인 예입니다.

다음 코드 뒤에 있는 클래스 수준에서 이 목록을 선언합니다.

public List<string> Sites = new List<string> { "StackOverflow", "Super User", "Meta SO" };

단순한 문자열 목록입니다. 그러면 aspx 파일에서

<% foreach (var site in Sites) { %> <!-- loop through the list -->
  <div>
    <%= site %> <!-- write out the name of the site -->
  </div>
<% } %> <!--End the for loop -->

WebForm에서 Repeater 컨트롤을 사용할 수 있습니다.

<asp:Repeater id="cdcatalog" runat="server">
   <ItemTemplate>
       <td><%# Eval("title")%></td>
   </ItemTemplate>
</asp:Repeater>

코드 배경:

cdcatalog.DataSource = yourData;
cdcatalog.DataBind();

를 사용할 수 있습니다.Repeater어떤 종류의 타당성이 있는.DataSource(SqlDataSource,EntityDataSource,ObjectDataSource) 개체:

  1. 데이터 원본 정의
  2. Repater에서 데이터 소스 참조

....

 <asp:Repeater id="someRep" runat="server" DataSourceID="YourDataSource">
       <ItemTemplate>
          <tr>
                <td><%# Eval("PropertyName") %></td> 
          </tr>
    </ItemTemplate>
    </asp:Repeater>

...

언급URL : https://stackoverflow.com/questions/14732801/how-to-loop-through-data-in-webforms-like-in-mvc

반응형