Entspricht Eval("Feld") in ASP.NET Repeater ItemDataBound-Ereignis?

Möchte ich das gleiche Eval("Feld") in einem ASP.NET repeater ItemDataBound-Ereignis, aber bin mir nicht sicher, was zu casten.e.Element.DataItem als. Typ der Datenquelle variieren kann, wie das ist, wiederverwendbaren code in ein benutzerdefiniertes Steuerelement. Also, wie kann ich den Zugriff auf ein Feld in e.Element.DataItem durch das Feld name (ein string)?

Idealerweise möchte ich so etwas machen:

protected void Repeater1_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
    if (e.Item.ItemType == ListItemType.AlternatingItem || e.Item.ItemType == ListItemType.Item)
    {
        xxx item = (xxx)e.Item.DataItem;
        string fieldValue = item("fieldname");
    }
}
InformationsquelleAutor John | 2011-06-14
Schreibe einen Kommentar