我知道这个问题可能是重复的,但我看了很多例子,但没有一个适合我的情况。
我在 DataList 中有一个 DropDownList,我需要用数据库中的数据填充 DropDownList。我知道如何在 DataList 中找到下拉控件,并且知道如何使用 SqlCommand 填充下拉列表。现在我正在尝试学习 LINQ,但我无法填写下拉列表。请看下面我的场景:
//Scenario 1
var ddquery = from dd in db.PRODUCTs select dd.pr_product.Distinct();
product.DataSource = ddquery;
product.DataTextField = "pr_product";
product.DataValueField = "pr_product";
product.DataBind();
在场景 1 中,我收到错误:“'System.String' 类型不支持序列运算符。”
//Scenario 2
var ddproc = from dd in db.isp_GETDDL("PRODUCTS", "", "") select dd;
product.DataSource = ddproc;
product.DataTextField = "pr_product";
product.DataValueField = "pr_product";
product.DataBind();
在场景 2 中,我收到错误:“DataBinding:'isp_GETDDLResult' 不包含名为 'pr_product' 的属性。” 在这种情况下,我并不是真的做对了,因为 PROC 返回一组数据,但我不确定我是否正确处理。
//Scenario 3
var ddq = from dd in db.PRODUCTs select dd;
product.DataSource = ddq;
product.DataTextField = "pr_product";
product.DataValueField = "pr_product";
product.DataBind();
在场景 3 中,我得到与 2 中相同的错误,但在这个错误中,我没有使用 PROC 来获取数据。
任何帮助将不胜感激。