Pro*_*ega 5 data-binding expandoobject
对于我的生活II似乎无法使数据绑定到Dynamics或ExpandoObjects工作.
我在WinForms和WebForms中尝试了这个,并在每个中得到不同的结果:
在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();
}
Run Code Online (Sandbox Code Playgroud)
这导致:
DataBinding:'System.Dynamic.ExpandoObject'不包含名称为'Name'的属性.
在WinForms中,我有一个不同的问题:
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";
Run Code Online (Sandbox Code Playgroud)
这导致ComboBox显示"System.Dynamic.ExpandoObject" - 因为它只是在集合中的两个项目上调用ToString().:(
我很感激帮助!
小智 0
尝试这个
var contacts = new List<dynamic>()
{
new {Name = "Patrick Hines",Phone = "206-555-0144"},
new {Name = "Ellen Adams",Phone = "206-555-0155"}
};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1688 次 |
| 最近记录: |