SqlParameterCollection 仅接受非空的 SqlParameter 类型对象,不接受 String 对象

protectedvoidButton1_Click(objectsender,EventArgse){if((authenticated(TextBox1.Text.T... protected void Button1_Click(object sender, EventArgs e) { if ((authenticated(TextBox1.Text.Trim(), TextBox2.Text.Trim()))==true) { FormsAuthentication.SetAuthCookie(TextBox1.Text.Trim(), false); Response.Redirect(PathPrefix + "/ST_Default.aspx"); ShowMsg.Text = "welcome to loggin"; } public bool authenticated(string name, string pwd) { Authenticated =ST_PageBase.CheckUser(name,pwd); return Authenticated; }public static bool CheckUser(string name, string pwd) { bool authenticated=false; string ST_sqldb = System.Configuration.ConfigurationManager.AppSettings["connectionstring"]; SqlCommand ST_mycommand = new SqlCommand(); ST_mycommand.Connection = new SqlConnection(ST_sqldb); try { ST_mycommand.Connection.Open(); ST_mycommand.CommandText = "ST_ValidateUsers"; ST_mycommand.CommandType = CommandType.StoredProcedure; SqlParameter Name=new SqlParameter("@name", SqlDbType.VarChar,20); Name.Value=name; ST_mycommand.Parameters.Add(Name); SqlParameter password = new SqlParameter("@pwd", SqlDbType.VarChar,15); password.Value =pwd.Trim(); ST_mycommand.Parameters.Add(pwd); SqlParameter IsValid = new SqlParameter("@IsValid", SqlDbType.Int); IsValid.Direction=ParameterDirection.Output; ST_mycommand.Parameters.Add(IsValid); ST_mycommand.ExecuteNonQuery(); if ((Int32)IsValid.Value==1) { authenticated=true; } } catch (Exception ex) { throw (ex); } finally { ST_mycommand.Connection.Close(); } return authenticated; } 展开
 我来答
NET码农
2011-10-25 · 超过24用户采纳过TA的回答
知道答主
回答量:98
采纳率:0%
帮助的人:67万
展开全部
SqlParameterCollection的Add方法有4个重载方法,你可以使用其他重载方法。
还有一个AddWithValue方法,你可以直接添加参数名与参数值。例如:
ST_mycommand.Parameters.AddWithValue("name", name);
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式