自定义验证控件验证用户名是否被注册?

cqnuzjj 2008-11-25 04:42:28
运行的时候老是提示User附近有语法错误:

<li>用户名:<asp:TextBox ID="txtName" runat="server" ></asp:TextBox>
<asp:CustomValidator ID="csvCheckuser" runat="server"
ControlToValidate="txtName" ErrorMessage="该用户名已被注册!"
onservervalidate="csvCheckuser_ServerValidate">该用户名已被注册!</asp:CustomValidator>
</li>


验证代码(C#):

protected void csvCheckuser_ServerValidate(object source, ServerValidateEventArgs args)
{
string sConnectionString = ConfigurationManager.ConnectionStrings["decoraconn"].ToString();
SqlConnection conn = new SqlConnection(sConnectionString);
conn.Open();
SqlCommand cmd = new SqlCommand("select count(*) from User where username='"+this.txtName.Text.ToString()+"'",conn);
int count = Convert.ToInt32(cmd.ExecuteScalar());
conn.Close();
if (count>0)
{
args.IsValid = false;
}
else
{
args.IsValid = true;
}
}


注:表名是User,用户名字段是username
...全文
49 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
yanrabbit163 2008-11-25
  • 打赏
  • 举报
回复
User是关键字,最好不要用这种关键字做表名,如果一定要用,就把User用[]括起来
melon23 2008-11-25
  • 打赏
  • 举报
回复
看不出有什么问题

select count(*) from User where username=...
放到sql上面试试

或者用参数试试
select count(*) from User where username=@username

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧