如何将值绑定到下拉列表?

时间:2017-01-06 10:06:56

标签: c# sql asp.net

我想将数据绑定到多个下拉列表,我想根据它的值(代码)显示文本。
这是代码

Additional information: DataBinding: 'System.Data.DataRowView' does not contain a property with the name 'NAT_code'.      

NAT_code包含一个国家/地区的号码,NAT_NAME将该国家/地区的相关名称作为文本。当我在sql server中执行时,查询很有效。但是当我运行程序时,我得到一个例外,如下所示。

<select name="PersonList[0]" class="form-control">
<select name="PersonList[1]" class="form-control">
<select name="PersonList[2]" class="form-control">
...

我该如何解决?

2 个答案:

答案 0 :(得分:5)

View columnNames [] 中缺少NAT_CODE字段。将其添加到您的不同值。它应该是这样的。

distinctValues = view.ToTable(true, "NAT_NAME",  "NAT_code");

答案 1 :(得分:3)

试试这个。

distinctValues = view.ToTable(true, "NAT_NAME","NAT_code");
ddlNationality.DataSource = distinctValues;
ddlNationality.DataTextField = "NAT_NAME";
ddlNationality.DataValueField = "NAT_code";
ddlNationality.DataBind();