Pregunta

Estoy configurando el DataSource de un repetidor ASP.NET de la siguiente manera:

rptTargets.DataSource = from t in DB.SalesTargets select new { t.Target, t.SalesRep.RepName };

Ahora, en el evento OnDataBound del repetidor, ¿cómo puedo recuperar las propiedades RepName y Target del tipo anónimo contenido en e.Item.DataItem?

Muchas gracias

¿Fue útil?

Solución

Puede usar DataBinder.Eval :

string repName = (string)DataBinder.Eval(e.Item.DataItem, "RepName");
string target = (string)DataBinder.Eval(e.Item.DataItem, "Target");

Otros consejos

Sé que esta pregunta se respondió hace más de un año, pero acabo de encontrar una solución .NET 4.0 para este problema.

Cuando vincula su tipo anónimo a un repetidor, puede acceder a las propiedades en el evento OnDataBound de esta manera:

dynamic targetInfo = e.Item.DataItem as dynamic;

string repName = targetInfo.RepName;
string target = targetInfo.Target;
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top