パラメーター値をListItemからStringに変換できませんでした

StackOverflow https://stackoverflow.com/questions/1604535

  •  05-07-2019
  •  | 
  •  

質問

SQL Server 2005を使用して特定の値をテーブルに挿入しようとしています。 テキストボックス、ラベル、リストボックスを使用しました。 しかし、そうすることで、「パラメーター値をListItemからStringに変換できませんでした」というエラーが発生します。

これをどのように解決しますか?

try
        {
            //Create an insert command
            SqlCommand insertCmd = new SqlCommand("INSERT INTO Account(CustID, Name, TelExtension, Email, Password, AccountType, Status) VALUES " + "(@StaffID, @Name, @TelExtension, @Email, @Password, @StaffType, @Status); SELECT * FROM StaffAccount", sqlCon);

        //Add the parameters to the command
        insertCmd.Parameters.Add("@CustID", SqlDbType.VarChar, 20);
        insertCmd.Parameters.Add("@Name", SqlDbType.VarChar, 50);
        insertCmd.Parameters.Add("@TelExtension", SqlDbType.NChar, 20);
        insertCmd.Parameters.Add("@Email", SqlDbType.VarChar, 50);
        insertCmd.Parameters.Add("@Password", SqlDbType.VarChar, 25);
        insertCmd.Parameters.Add("@AccountType", SqlDbType.VarChar, 2);
        insertCmd.Parameters.Add("@Status", SqlDbType.VarChar, 1);

        //Set the parameters
        insertCmd.Parameters["@CustID"].Value = StaffID_txt.Text;
        insertCmd.Parameters["@Name"].Value = Name_txt.Text;
        insertCmd.Parameters["@TelExtension"].Value = telExtension_txt.Text;
        insertCmd.Parameters["@Email"].Value = email_txt.Text;
        insertCmd.Parameters["@Password"].Value = password_txt.Text;
        insertCmd.Parameters["@AccountType"].Value = StaffType_LB.SelectedItem;
        insertCmd.Parameters["@Status"].Value = status_lblvalue.Text;
役に立ちましたか?

解決

変更

insertCmd.Parameters["@AccountType"].Value = StaffType_LB.SelectedItem;

to

insertCmd.Parameters["@AccountType"].Value = StaffType_LB.SelectedItem.Text;
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top