登录表单身份验证C#
我创建了一个存储过程名登录表单身份验证C#,c#,sql-server,linq-to-sql,C#,Sql Server,Linq To Sql,我创建了一个存储过程名sp_Auth,它的内部是 表名UserAccounts有两个字段,username和password都varchar(50) 我在存储过程中声明了两个变量,@username,@password Select * From UserAccounts where @username = username and @password = password 创建之后,我将它与表一起放入LINQtoSQL中,然后创建新类来调用LINQtoSQL类中的存储过程 我的问题是如何创建
sp_Auth
,它的内部是
表名UserAccounts
有两个字段,username
和password
都varchar(50)
我在存储过程中声明了两个变量,@username,@password
Select * From UserAccounts where @username = username and @password = password
创建之后,我将它与表一起放入LINQtoSQL中,然后创建新类来调用LINQtoSQL类中的存储过程
我的问题是如何创建一个方法,以便登录表单中的按钮检查或验证文本框中键入的用户名和密码与使用我的存储过程在表中找到的数据
我知道有很多方法可以做到这一点,但我发现它们使用sqlcommand或其他方法
我需要使用类来调用存储的进程
我想要实现的代码是这样的
公共静态sp_插件(产品p)
db=新的DataClassContext();
db.storedprocInsert(@Name,@Pname);
我可以像上面的代码那样在类中创建验证器或检查器吗?看一看。这会让你上路的。您可以使用查询结果来确定用户是否已验证
请记住,密码不应以明文形式存储,至少应进行散列甚至盐析,这将要求您在查询之前将用户密码转换为匹配的散列类型 请阅读本文,这不是对您的问题的回答,但您不应该在存储过程中使用“sp_u2;”前缀。“sp_”代表“系统程序”。我用“up_”表示“用户过程”,但这只是个人喜好。另一个不是答案但很重要的评论是,您不应该以明文形式存储密码。先生,我不打算加密我的密码,因为这只是我们使用本地数据库的项目。