我创建一个登录页面来验证用户。我有一个像以下一样的SQL表:
表: tblUsers
userID (int is identity)
username (nvarchr (50))
password (nvarchr (50))
的Login.aspx
Username<asp:TextBox ID="txtUsername" runat="server"></asp:TextBox><br />
Password <asp:TextBox ID="txtPassword" runat="server"></asp:TextBox><br />
<asp:Button ID="cmdLogin" runat="server" Text="Login"
onclick="cmdLogin_Click" /><br />
<asp:Label ID="lblError" runat="server" EnableViewState="False"></asp:Label><br />
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:ConStr %>"
SelectCommand="SELECT * FROM [tblUser] WHERE (([username] = @username) AND ([password] = @password))">
<SelectParameters>
<asp:ControlParameter ControlID="txtPassword" Name="username"
PropertyName="Text" Type="String" />
<asp:ControlParameter ControlID="txtPassword" Name="password"
PropertyName="Text" Type="String" />
</SelectParameters>
</asp:SqlDataSource>
验证用户位于SqlDataSource的SelectCommand中。
SELECT * FROM [tblUser] WHERE (([username] = @username) AND ([password] = @password))
如何通过SqlDataSource验证用户?我想要登录按钮的代码。
答案 0 :(得分:1)
试试这个:
protected void cmdLogin_Click(object sender, EventArgs e)
{
DataView dView = (DataView)SqlDataSource1.Select(DataSourceSelectArguments.Empty);
if (dView.Count == 1)
Response.Redirect("~/Default.aspx");
else
lblError.Text="Incorrect username or password!";
}