728x90
반응형
ASP.NET Web Forms에서 데이터 바인딩은 데이터를 웹 페이지의 UI 컨트롤에 연결하는 작업을 의미한다.
데이터 바인딩을 통해 데이터베이스, 컬렉션, 객체 등의 데이터를 웹 페이지에 동적으로 표시하거나 사용자 입력과 연결할 수 있다.
단방향 데이터 바인딩
Eval()
데이터 바인딩 표현식으로 데이터 원본의 필드 값을 가져온다.
<asp:Label ID="Label1" runat="server" Text='<%# Eval("FieldName") %>'></asp:Label>
Bind()
양방향 데이터 바인딩을 위해 사용되며, 보통 데이터 소스의 필드 값을 컨트롤에 바인딩할 때 사용된다.
<asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("FieldName") %>'></asp:TextBox>
<% ... %>: 서버 측 코드 블록. 서버 측 코드는 웹 페이지가 서버에서 처리될 때 실행된다.
%#: 데이터 바인딩 표현식의 시작.
바인딩 컨트롤
GridView
데이터를 그리드 형태로 표시하고 편집할 수 있는 컨트롤.
<asp:GridView ID="GridView1" runat="server" DataSourceID="SqlDataSource1"></asp:GridView>
ListView
데이터를 목록 형태로 표시하고 편집할 수 있는 컨트롤.
<asp:ListView ID="ListView1" runat="server" DataSourceID="SqlDataSource1">
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Eval("FieldName") %>'></asp:Label>
</ItemTemplate>
</asp:ListView>
Repeater
데이터를 반복해서 표시하고 템플릿화된 UI를 사용자 정의할 수 있는 컨트롤.
<asp:Repeater ID="Repeater1" runat="server" DataSourceID="SqlDataSource1">
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Eval("FieldName") %>'></asp:Label>
</ItemTemplate>
</asp:Repeater>
데이터 소스 컨트롤
SqlDataSource
SQL 데이터베이스와 연결하여 데이터를 가져오고 업데이트할 수 있는 컨트롤.
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString %>"
SelectCommand="SELECT * FROM TableName"></asp:SqlDataSource>
기타 데이터 소스 컨트롤로는 ObjectDataSource, XmlDataSource, EntityDataSource 등이 있다.
이벤트 기반 데이터 바인딩
코드 비하인드(C# 또는 VB.NET)에서 데이터를 가져와 컨트롤에 동적으로 바인딩할 수 있다.
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
// 데이터 가져오기
List<Item> itemList = GetItemsFromDatabase();
// 데이터 바인딩
GridView1.DataSource = itemList;
GridView1.DataBind();
}
}
728x90
반응형
'Skills > Asp.net' 카테고리의 다른 글
ASPX GetRowValues 메서드를 사용해서 특정 Row 값 접근하기 (0) | 2023.09.12 |
---|---|
버튼 컨트롤 비활성화시키는 법(CSR, SSR) (0) | 2023.09.12 |
.NET Framework의 역대 버전 (0) | 2023.08.29 |
.NET과 ASP.NET의 차이 (0) | 2023.08.29 |
Asp.net WebForms는 어떤 식으로 동작할까? (0) | 2023.08.29 |