Tipo anonimo nell'evento Repeater DataBound
-
06-07-2019 - |
Domanda
Sto impostando l'origine dati di un ripetitore ASP.NET come segue:
rptTargets.DataSource = from t in DB.SalesTargets select new { t.Target, t.SalesRep.RepName };
Ora, nell'evento OnDataBound del ripetitore, come posso recuperare le proprietà RepName e Target dal tipo anonimo contenuto in e.Item.DataItem?
Molte grazie
Soluzione
Puoi utilizzare DataBinder.Eval :
string repName = (string)DataBinder.Eval(e.Item.DataItem, "RepName");
string target = (string)DataBinder.Eval(e.Item.DataItem, "Target");
Altri suggerimenti
So che questa domanda ha avuto risposta più di un anno fa, ma ho appena trovato una soluzione .NET 4.0 per questo problema.
Quando associ il tuo tipo anonimo a un ripetitore, puoi accedere alle proprietà dell'evento OnDataBound in questo modo:
dynamic targetInfo = e.Item.DataItem as dynamic;
string repName = targetInfo.RepName;
string target = targetInfo.Target;
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow