Jag bloggar numera på http://blog.dileno.com ».

Prenumerera på RSS

Förbättra prestanda i ASP.NET genom att inte använda DataBinder.Eval

DataBinder.Eval-metoden är välanvänd för att skicka in ett argument och returnera ett resultat. Det DataBinder.Eval gör är att casta Container.DataItem till dess verkliga typ. Så här:

<%# DataBinder.Eval(Container.DataItem, "Heading") %>

DataBinder.Eval använder sig av .NET reflection för att avgöra vilken typ Container.DataItem ska castas till. Användandet av reflection gör att DataBinder.Eval är mer prestandakrävande än vad som egentligen behövs.

För att öka prestandan kan du i stället explicit casta Container.DataItem till dess specifika typ. Så här:

<%# ((DbDataRecord)Container.DataItem)["Heading"] %>

Till sidhuvudet

Clicky Web Analytics