Per la vita di me, non riesco a ottenere il Databinding per Dynamics o ExpandoObjects funzionante.L'associazione dati dinamici e ExpandoObjects funzionano in .NET
Ho provato questo in WinForms e WebForms e ottenere risultati diversi in ciascuna:
In ASP.NET:
<asp:DropDownList ID="DropDownList1" runat="server">
</asp:DropDownList>
protected void Page_Load(object sender, EventArgs e)
{
dynamic contacts = new List<dynamic>();
contacts.Add(new ExpandoObject());
contacts[0].Name = "Patrick Hines";
contacts[0].Phone = "206-555-0144";
contacts.Add(new ExpandoObject());
contacts[1].Name = "Ellen Adams";
contacts[1].Phone = "206-555-0155";
DropDownList1.DataSource = contacts;
DropDownList1.DataTextField = "Name";
DropDownList1.DataBind();
}
Questo si traduce in:
DataBinding: 'sistema. Dynamic.ExpandoObject 'non contiene una proprietà con il nome' Nome '.
In WinForms, ho un problema diverso:
dynamic contacts = new List<dynamic>();
contacts.Add(new ExpandoObject());
contacts[0].Name = "Patrick Hines";
contacts[0].Phone = "206-555-0144";
contacts.Add(new ExpandoObject());
contacts[1].Name = "Ellen Adams";
contacts[1].Phone = "206-555-0155";
this.departmentList.DataSource = contacts;
this.departmentList.DisplayMember = "Name";
Il risultato è la visualizzazione ComboBox "System.Dynamic.ExpandoObject" - come viene semplicemente chiamando ToString() sui due elementi della collezione . :(
Apprezzo l'aiuto!
Non posso parlare a quei API, associazione dati dinamico funziona in WPF però. – jbtule
Hai visto questa domanda [Come DataBind una griglia su un ExpandoObject] (http://stackoverflow.com/questions/4740969/how-to-databind-a-gridview-to-an-expandoobject) e [this] (http://stackoverflow.com/questions/ 1653046/what-are-the-true-benefits-of-expandoobject/1653069 # 1653069) rispondere a una domanda diversa? – R0MANARMY
Non ricevo errori ma nelle app di Windows Store, il valore iniziale letto va bene ma la successiva notifica di modifica non sembra funzionare. –