我有一个下拉列表控件。
<asp:DropDownList runat="server" ID="ddlMarketerContract" CssClass="form-control" />
我使用 LINQ 和 EF 在代码隐藏中设置数据源
ddlMarketerContract.DataSource = context.Table.Select(x => x.ColumnName).Distinct().ToList();
但是在单步执行调试时,当我去绑定数据时
ddlMarketerContract.DataBind();
我收到"对象引用未设置为对象的实例"错误。
不知道为什么它允许我设置数据源,但在绑定控件时找不到对象。
我在另一个页面上也有类似的设置,但这符合预期。我想也许是因为我没有设置DataTextField/DataValueField,但另一个页面没有设置这些,它仍然工作正常。
问题出在 LINQ 语句上。在创建字符串值的通用列表后,我能够很好地绑定控件。将修改 LINQ 查询以解决此问题。