使用以下內容有什麼優點或差異嗎?ASP.NET - 在服務器標籤中使用(類型)Container.DataItem和Eval()是否有任何優勢或差異?
<%# Eval("Item.Details")%>
和<%# ((ItemDetails)Container.DataItem).Item.Details%>
使用以下內容有什麼優點或差異嗎?ASP.NET - 在服務器標籤中使用(類型)Container.DataItem和Eval()是否有任何優勢或差異?
<%# Eval("Item.Details")%>
和<%# ((ItemDetails)Container.DataItem).Item.Details%>
第二種方法的優點是,它是類型安全的,因此可以在編譯時使用aspnet_compiler(如果有用的話來檢查,對於例如,你的數據模型改變了)。
甚至可以在代碼隱藏文件中的函數中將DataItem類型轉換爲您的ItemDetails類,並避免重複類型轉換,如我在blog post中草擬的那樣。