본문 바로가기

study

ASP.NET 데이터 바인딩

올해 계속 JSP 하다가
여기 와서 ASP 하고 ASP.NET 하고 그러니까
머리속에서 뒤죽박죽 되어서는 엉망진창이다.

젤 당황했던게 <%# %> 의 등장...
도대체 <%= %>와의 차이가 뭐냔 말이냣!!!
하고 한참을 고민하고
에이 몰라 그냥 쓰지 뭐 하고 있다가
오늘에서야 알아냈다.
나 예전에 ASP.NET 했었던거 맞나? ㅋㅋㅋ

<%= %> 나 <%# %> 나 데이터 바인딩 해주는건 똑같지만
<%= %> 는 그냥 항상 실행 되는거고
<%# %> 는 DataBind() 메소드가 호출 안되면 실행이 안된다는거..

그냥 변수 불러오는거면 Page.DataBind() 하면 되고.. (Page는 생략 가능..)
리스트에 바인딩하고 불러오는거면 리스트.DataBind() 하면 되고..
여튼 DataBind() 가 있어야 값이 매핑된다.

뭐 어떤걸 쓰냐에 따라 코드는 조금씩 달라질 수 있는데,
결국 어떤 걸 쓰든 같은 페이지를 만들어낼 수 있다.

그냥 변수 바인딩엔 <%= %>,
<asp:repeater> 안에서 DataList 값 가져올 땐 <%# %> 쓰는게 일반적이고
나름 가독성도 있는듯..
<%# %> 쓸 때는 <%#DataBinder.Eval(Container.DataItem,"column1")%> 이런식으로...
페이지 로드할 때 DataBind() 하는거 잊지말고..ㅎ


아우씨 머리아프고 귀찮다
난 왜 뭘 해도 귀찮냐 -_-a