selectedvalue无效,因为它不存在于项目列表下拉列表中

时间:2013-04-29 05:36:47

标签: asp.net sql data-binding drop-down-menu

我绑定了一个下拉列表,这是我的代码:(DataLayer)

        string countrySQL = "SELECT * From Country";
        string[] param = { };
        object[] paramVal = { };

        return ClassDBQuery.ExecDataReader(countrySQL, param, paramVal);

    void GetCountry()
    {
        DataTable DTcountry = new DataTable();
        DTcountry = ClassMerchant.GetCountry();

        ddlC.DataSource = DTcountry;
        ddlC.DataTextField = "CountryName";
        ddlC.DataValueField = "CountryID";
        ddlC.DataBind();
    } // end GetCountry

当我加入.datavaluefield = "CountryID"时,我收到此消息

selectedvalue which is invalid because it does not exist in the list of items dropdownlist

但是,当我删除.datavaluefield时,我的代码的其他部分出现错误,因为我没有获得CountryID,而是获得CountryName并强制转换从String到Integer。但是这个Data Bind代码在我的注册页面中运行良好。如何使我的数据绑定(DropDown列表)起作用?

1 个答案:

答案 0 :(得分:0)

将所选值设置为NULL或数据源中的任何值(第一个值)以解决此问题。