I use C# asp.net4.
I have a method to populate a Repeater with Anonymous Types (Fields: Title, CategoryId), inside the Repeater I also placed a Label:
You can use a dynamic in this case. I think the code would be:
protected void uxRepeter_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
dynamic link = (dynamic)e.Item.FindControl("uxLabel");
uxLabel.Text = link.Title; //since 'link' is a dynamic now, the compiler won't check for the Title property's existence, until runtime.
}