无法将参数值从DropDownList转换为String

时间:2014-04-16 03:20:27

标签: c# mysql asp.net sql database

我在这里尝试将dropdownlist值插入我的sqldatabase,但它不起作用。你能帮我找到我做错的事吗?

这是我的下拉列表的asp.net代码:

<p> Hardware Type&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; :
    <asp:DropDownList ID="DropDownList1" runat="server" Height="17px" Width="128px">
        <asp:ListItem>Please Choose</asp:ListItem>
        <asp:ListItem Value="laptop">Laptop</asp:ListItem>
        <asp:ListItem Value="server">Server</asp:ListItem>
        <asp:ListItem Value="television">Television</asp:ListItem>
        <asp:ListItem Value="printer">Printer</asp:ListItem>
    </asp:DropDownList>

这是我的.cs for dropdownlist

comu.Parameters.Add("Hwtype", SqlDbType.VarChar, 50);
comu.Parameters["Hwtype"].Value = DropDownList1;
comu.Connection = con;
comu.ExecuteNonQuery();
con.Close();
}
}

我收到此错误:Failed to convert parameter value from a DropDownList to a String.

1 个答案:

答案 0 :(得分:2)

问题:您正在尝试分配DropDownList控件,而不是SelectedValue

替换它:

comu.Parameters["Hwtype"].Value = DropDownList1;

有了这个:

comu.Parameters["Hwtype"].Value = DropDownList1.SelectedValue;

OR

comu.Parameters["Hwtype"].Value = DropDownList1.Items[DropDownList1.SelectedIndex];