我在ASP.net页面中有一个名为(DDL)的DropDownList,我希望DDL包含数据库中表的一些记录。
所以我这样做了:
DDL.DataSource = myDataReader
DDL.DataBind()
但它给了我(5条记录)“表格的记录数量”,但是像这样:
System.Data.Common.DataRecordInternel
System.Data.Common.DataRecordInternel
System.Data.Common.DataRecordInternel
System.Data.Common.DataRecordInternel
System.Data.Common.DataRecordInternel
答案 0 :(得分:4)
您应该设置DataTextField和DataValueField,否则数据绑定将在每一行上执行.ToString()并将其作为项目放置:
DDL.DataSource = myDataReader;
DDL.DataTextField = "[Text column name]";
DDL.DataValueField = "[Value column name]";
DDL.DataBind();
答案 1 :(得分:0)
你需要在数据绑定之前设置ddl的文本和关键字段
DDL.DataTextField = "textColumn";
DDL.DataValueField = "textColumn":
答案 2 :(得分:0)
代码:ddl.datasource=reader
只是将阅读器中存在的内容(表格列数组)设置为主要数据来源。
现在ddl
只显示一个列所以你需要编写一段代码告诉ddl
它必须显示哪一列。
所以你要写:ddl.textfield=
“你要显示的列名”;
和ddl.valuefield="
列名称,您希望将其作为参考传递给数据库“;