我有以下陈述:
SqlConnection con = new SqlConnection(ConfigurationManager.AppSettings["DataBaseName"]);
SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandText = "update Table1 set data = @data where id = @id";
cmd.Parameters.AddWithValue("@data", SqlDbType.VarChar).Value = data;
cmd.Parameters.AddWithValue("@id", SqlDbType.Int).Value = id;
cmd.CommandType = CommandType.Text;
try
{
DataSet ds = new DataSet();
con.Open();
cmd.Prepare();
cmd.ExecuteNonQuery();
return true;
}
执行cmd.Prepare()
时出现错误SqlCommand.Prepare method requires all parameters to have an explicitly set type
我在这里阅读了一些答案,但看起来像我所描述的here 但仍有同样的问题。
我错过了什么?