开发工具VWD
暂时没发觉LOIGN控件里面有数据源设置。只能用哪个网站管理添加的用户信息登录吗?
如果需要利用SQLSERVRE里面的用户信息是不是只能用以前ASP那样自己写登录代码了?
另外是不是ASP.NET2.0设定登录页面只能叫LOGIN.ASPX啊?
我想在INDEX.ASPX里面设置登录,应该怎么搞呢?
谢谢各位
暂时没发觉LOIGN控件里面有数据源设置。只能用哪个网站管理添加的用户信息登录吗?
如果需要利用SQLSERVRE里面的用户信息是不是只能用以前ASP那样自己写登录代码了?
另外是不是ASP.NET2.0设定登录页面只能叫LOGIN.ASPX啊?
我想在INDEX.ASPX里面设置登录,应该怎么搞呢?
谢谢各位
两个TextBox: 用户名 密码
两个Button: 登录 取消点击登录,传用户名 密码给SQL Server SP,用户验证。
如果用户存在则做A
不存在做B
首先进菜单 网站-》ASP.NET设置,在安全里有向导,把身份验证改为INTERNET,还可以添加用户组和用户
然后就会自动在App_Data目录下生产一个10M左右的ASPNETDB.MDF文件,这个好像是叫sql server express,就相当于sql server文件版,和access差不多,你可以在app_data目录上右击添加现有项,把数据库添加进来
然后就可以查看自动生成的表结构了
一般我们都有自己的数据库,单独把用户数据分开放这个数据库很不方便,所以下面就把这个数据库导出
在服务器资源管理器中选择该数据库 右击 发布到提供程序,根据向导就可以生成SQL语句了
然后copy过去到自己的数据库中运行建立相应的表
建好数据库后就需要做数据库链接了,ASP.NET默认连接到刚才的ASPNETDB.MDF的连接字符串是在LocalSqlServer里,这里我们把这个给替换掉就行了
在web.config里面<configuration>节点中设置一下
<connectionStrings>
<remove name="LocalSqlServer"/>
<add name="LocalSqlServer" connectionString="Data Source=YFWANGHY\SQLEXPRESS;Initial Catalog=blog;Persist Security Info=True;User ID=sa;Password=yjcqwliu" providerName="System.Data.SqlClient"/>
</connectionStrings>
然后就可以使用自己的数据库了在system.web节点中的authentication可以设置登陆界面的地址
<authentication mode="Forms">
<forms loginUrl="login.aspx" defaultUrl="admin/default.aspx"></forms>
</authentication>
最后还有对密码强度的修改,默认情况下注册的时候填写的密码必须要有一个字符,很不符合大家习惯
在system.web里添加下面配置
<membership>
<providers>
<remove name="AspNetSqlMembershipProvider"/>
<add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" connectionStringName="LocalSqlServer" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="true" applicationName="/" requiresUniqueEmail="false" passwordFormat="Hashed" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="3" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" passwordStrengthRegularExpression=""/>
</providers>
</membership>其中minRequiredNonalphanumericCharacters="0" 就是把字符个数要求设定为0
1:建议楼主自己拖几个控件。
然后Web.Config做如下设置 </compilation>
<!--
通过 <authentication> 节可以配置 ASP.NET 用来
识别进入用户的
安全身份验证模式。
-->
<authentication mode="Forms">
<forms name="AspMemberShip" loginUrl="Login.aspx" protection="All" timeout="30" />
</authentication>
<authorization>
<deny users="?"/> <!--这里是不允许匿名用户登录-->
</authorization>登录按钮代码:protected void btnLogin_Click(object sender, EventArgs e)
{
if (this.txtPassword.Text=="1234"&&this.txtUserName.Text=="1234")
{
FormsAuthentication.RedirectFromLoginPage(this.txtUserName.Text, true);
}
else
{
Response.Write("用户名或密码错误");
}
}
这样就可以做到限制用户必须从某个窗口登录了。