检索手动下拉列表的数据库值

时间:2013-04-22 22:03:36

标签: c# asp.net

所以我有一个手动下拉列表,我添加了3个项目(没有数据连接,没有绑定)。

 **Text**                   **Value**
 blank space            blank space
 Dog                    6
 Cat                    7

我将下拉列表值存储为

  mycommand.Parameters.AddWithValue("@ANIMAL", SqlDbType.Char).Value = ddlAnimals.SelectedItem.Text;

我检索下拉列表值

 ddlAnimals.SelectedItem.Value = mySqlDataReader[1].ToString();

我遇到的问题是虽然我的下拉列表填充了正确的文本(在我检索之后),但它复制了列表中的文本,并且数据库中的文本没有与之关联的值。如果我返回Dog,则没有值6.我的下拉列表,点击后如下:

   Dog (Currently Selected upon Click)
   Dog
   Cat

如果我选择其他狗或猫值,我保留我的6和7.但原始的“狗”没有与文本相关的值。世界上我做错了什么?

1 个答案:

答案 0 :(得分:0)

在加载下拉列表之前清除项目然后重新加载它。就像这样:

ddlAnimals.Items.Clear();

使用ddlAnimals.SelectedValue传递如下参数:

mycommand.Parameters.AddWithValue("@ANIMAL", SqlDbType.Char).Value = ddlAnimals.SelectedValue;