DataBinding:'System.Data.DataRowView'不包含名为'Driver_Name'的属性

时间:2013-12-17 07:16:39

标签: asp.net c#-4.0

 string[] Parameters = new string[3] { "@USER_ID", "@Company_ID", "@DRIVER_NAME" };
    string[] DbTypes = new string[3] { "varchar", "int", "varchar" };
    string[] ParameterTypes = new string[3] { "input", "input", "input" };
    string[] values = new string[3] { (Session["UserID"].ToString()), ddlCompany.SelectedValue.ToString(), txt_DRIVER_NAME.Text.Trim() };
    string[] Lengths = new string[3] { "50", "5", "20" };

    DataUtility du = new DataUtility();
    DataSet ds = du.returnDataSet(CommandType.StoredProcedure, "Driver_Zone_Wise", Parameters, DbTypes, ParameterTypes, values, Lengths);

    lb_DriverList.DataTextField = "Driver_Name";
    lb_DriverList.DataValueField = "DRIVER_ID";

    lb_DriverList.DataSource = ds.Tables[0];
    ****lb_DriverList.DataBind();****

    lb_DriverList.Items.Insert(0, new ListItem("Select Vehicle", "0"));

    lb_DriverList.SelectedValue = "0";

}

4 个答案:

答案 0 :(得分:3)

错误表明您的查询结果中没有Driver_Name

检查您的查询并ds.Tables[0],查看您是否有Driver_Name列的天气。

编辑-1

检查您的程序Driver_Zone_Wise,确保您返回名称为Driver_Name的列。

答案 1 :(得分:1)

您绑定到Driver_Name的结果数据集中没有lb_DriverList字段。

检查ds

的结果集

答案 2 :(得分:1)

错误是不言自明的。看来你的结果中没有DRIVER_NAME。或者您的数据库没有这样的列检查您的数据库。

我建议你在填充数据集的结果处插入断点,然后相应地调试它。

答案 3 :(得分:0)

您的代码错误ddlCompany.SelectedValue.ToString() 你改变了

string[] values = new string[3] { (Session["UserID"].ToString()), int.Parse(ddlCompany.SelectedValue.ToString()), txt_DRIVER_NAME.Text.Trim() };