封装一个ADO.net,插入一条数据不能显示插入内容而是变量名
调用封装方法
[HttpPost]
public string Insert(string userName, string password, string userLevel, string userNo)
{
SqlHelper sqlHelper = new SqlHelper();
SqlParameter[] sqlParameters = new SqlParameter[]
{
new SqlParameter("@UserName",userName),
new SqlParameter("@Password",password),
new SqlParameter("@UserLevel",userLevel),
new SqlParameter("@UserNo",userNo)
};
sqlHelper.ExecuteNonQuery("INSERT INTO users ( UserName, Password, UserLevel, UserNo ) VALUES ( '@UserName', '@Password', '@UserLevel', '@UserNo' )", sqlParameters );
return "数据插入成功!";
}
封装的方法
public int ExecuteNonQuery(string cmdText,params SqlParameter[] sqlParameters)
{
using SqlConnection sqlConnection = new SqlConnection(ConnectionStr);
sqlConnection.Open();
SqlCommand sqlCommand = new SqlCommand(cmdText,sqlConnection);
sqlCommand.Parameters.AddRange(sqlParameters);
return sqlCommand.ExecuteNonQuery();
}
设置断点后看到,形参已经拿到输入内容,但是变量始终没有赋值成功。
去掉引号。
加了引号就是个普通字符串、而不是参数了。