2010-12-08 6 views
4

Si j'ai objets dans mon DataSource i.e.ASP.NET: Objets dans Eval

.Select(e => new { Foo = new { Bar = "HelloWorld" }, Price = 12345 } 

comment la référence dois-je cela en utilisant Eval?

<%# Eval("Foo.Bar") %> 

ne fonctionne pas? (Eval ("Prix") fait ....)

Est-il possible de faire <% # Eval (Eval ("Foo"), "Bar")%> ou quelque chose?

Répondre

6

S'il s'agit d'une référence à un contrôle DataBound dans lequel vous liez une liste ou un IQueryable anonyme, vous devriez pouvoir utiliser Eval("Bar") puisque le Foo est déjà indiqué dans la liaison.

Edit:
En regardant votre mise à jour, si vous voulez utiliser la notation <%# %>, vous pourriez être en mesure de sortir avec elle en utilisant Container.DataItem.

<%# ((Foo)Container.DataItem)["Bar"] %> 
+0

J'ai mis à jour mon message ... Comment voulez-vous dire? –

+0

@Niels Bosma - J'ai également mis à jour ma solution. –