‘myObject’不包含名称为’ID’的属性(不是拼写错误)
我正在构建一个ASP.NET C#网站,我有一个下拉列表,我绑定到我创建的对象列表。 绑定下拉列表的代码如下所示:
protected void PopulateDropdownWithObjects(DropDownList dropdownlist, List() myObjects) { dropdownlist.DataValueField = "ID"; dropdownlist.DataTextField = "Name"; dropdownlist.DataSource = myObjects; // my code fails here dropdownlist.DataBind(); }
但是,当它遇到方法中的第3行时,会抛出exception:
DataBinding: 'myObject' does not contain a property with the name 'ID'.
但是,我可以在调试时清楚地看到myObject.ID值:我可以在立即窗口中访问它,它是公共的,它不是空的,我拼写正确并且使用正确的大小写:
public class myObject { public int ID; // see? "ID" is right here! public string Name; public myObject( int id, string name ) { this.ID = id; this.Name = name; } }
还有什么可以导致此错误吗?
您的代码无效,因为ID
是字段 ,而不是属性 。
如果您更改了类,如下所示,代码将按预期工作:
上述就是C#学习教程:‘myObject’不包含名称为’ID’的属性(不是拼写错误)分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
public class myObject { public int ID // this is now a property { get; set; } public string Name { get; set; } public myObject( int id, string name ) { this.ID = id; this.Name = name; } }
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/983400.html