[ASP.NET] 명시적인 캐스팅으로 성능향상
2010. 5. 10. 10:03ㆍWEB
DataBinder.Eval 매서드는 전송되거나 반환되는 인자를 알아내기 위해 .NET reflection을 사용한다.
ASP.NET페이지의 성능을 개선하기 위해 데이터 바인딩을 수행하는 동안 DataBinder.Eval의 사용을 자제하자.
DataBinder.Eval을 사용한 기존 방식
<ItemTemplate> <tr> <td><%# DataBinder.Eval(Container.DataItem, "field1") %></td> <td><%# DataBinder.Eval(Container.DataItem, "field2") %></td> </tr> </ItemTemplate>
명시적인 캐스팅(Container.DataItem을 DataRowView로 캐스팅)은 .NET reflection을 사용하지 않기 때문에 보다 나은 성능을 낸다.
<ItemTemplate> <tr> <td><%# ((DataRowView)Container.DataItem)["field1"] %></td> <td><%# ((DataRowView)Container.DataItem)["field2"] %></td> </tr> </ItemTemplate>
'WEB' 카테고리의 다른 글
[ASP.NET] Global.asax Events (0) | 2012.04.02 |
---|---|
[ASP.NET] 익명사용자를 위한 Profile 구성 (0) | 2012.03.14 |
[IIS7] web.config에서 HttpModules, HttpHandlers 사용 시 오류 처리 (1) | 2011.09.15 |
[Javascript] Javascript 실행 순서 (2) | 2011.08.29 |
Multi Project Debugging (0) | 2009.11.06 |