该字符串未被识别为有效的布尔值。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.FormatException: 该字符串未被识别为有效的布尔值。源错误:
行 52: cmd.Parameters["@UID"].Direction = ParameterDirection.Output;
行 53: conn.Open();
行 54: cmd.ExecuteNonQuery();
行 55: conn.Close();
行 56: int UserId = Convert.ToInt32( cmd.Parameters["@UID"].Value);代码:
SqlConnection conn=new SqlConnection (System.Configuration.ConfigurationManager.ConnectionStrings["constring"].ToString());
SqlCommand cmd = new SqlCommand("InsertUser", conn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("@UserCHName", SqlDbType.VarChar).Value = UserName.Text.Trim();
cmd.Parameters.Add("@UserPwd", SqlDbType.VarChar).Value = TextBox1.Text.Trim();
cmd.Parameters.Add("@@UserLevel", SqlDbType.Bit).Value = RadioButtonList1.SelectedValue;
cmd.Parameters.Add("@UID", SqlDbType.Int);
cmd.Parameters["@UID"].Direction = ParameterDirection.Output;
conn.Open();
cmd.ExecuteNonQuery();
conn.Close();
int UserId = Convert.ToInt32( cmd.Parameters["@UID"].Value);
if (UserId <= 0)
{
Label1.Text = "账户存在";
}
else
{
Response.Write("<script>alter('添加用户名成功')</script>");
}帮忙看哈
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.FormatException: 该字符串未被识别为有效的布尔值。源错误:
行 52: cmd.Parameters["@UID"].Direction = ParameterDirection.Output;
行 53: conn.Open();
行 54: cmd.ExecuteNonQuery();
行 55: conn.Close();
行 56: int UserId = Convert.ToInt32( cmd.Parameters["@UID"].Value);代码:
SqlConnection conn=new SqlConnection (System.Configuration.ConfigurationManager.ConnectionStrings["constring"].ToString());
SqlCommand cmd = new SqlCommand("InsertUser", conn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("@UserCHName", SqlDbType.VarChar).Value = UserName.Text.Trim();
cmd.Parameters.Add("@UserPwd", SqlDbType.VarChar).Value = TextBox1.Text.Trim();
cmd.Parameters.Add("@@UserLevel", SqlDbType.Bit).Value = RadioButtonList1.SelectedValue;
cmd.Parameters.Add("@UID", SqlDbType.Int);
cmd.Parameters["@UID"].Direction = ParameterDirection.Output;
conn.Open();
cmd.ExecuteNonQuery();
conn.Close();
int UserId = Convert.ToInt32( cmd.Parameters["@UID"].Value);
if (UserId <= 0)
{
Label1.Text = "账户存在";
}
else
{
Response.Write("<script>alter('添加用户名成功')</script>");
}帮忙看哈
另外用一个静态类把这个封装一下
System.Configuration.ConfigurationManager.ConnectionStrings["constring"].ToString()静态属性也行 const的
另外,重构一下吧。cmd.Parameters.Add("@UserPwd", SqlDbType.VarChar).Value = TextBox1.Text.Trim();命名不规范(根本就没改名),
不好做检查,比如验证密码不能为空,怎么处理?没有做异常处理。其他还有很多,就先不说了。