[ASPNET2.0]Membership类+SQLServer2005,AspNet_regsql.exe的使用

本文介绍如何使用 AspNet_regsql.exe 工具配置 ASP.NET 2.0 应用程序与 SQL Server 2005 数据库之间的会员资格及角色管理功能,并详细说明了配置步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

转自:http://www.cnblogs.com/volnet/archive/2007/04/02/696424.html
[ASPNET2.0]Membership类+SQLServer2005,AspNet_regsql.exe的使用

成 员关系Membership类总是被默认地和SQLServerExpress联系起来使用,但你的数据库可能是其他的数据源提供的,比如: SQLServer2000/2005,Oralce,OleDB,ODBC+Access,那么你可能需要做一些额外的工作来完成数据库和应用程序之间 的联系。
在MSDN中你可以很方便地查询到我们需要使用AspNet_regsql.exe工具来完成这个配置的过程。下面就以SQLServer2005的配置过程为例,图示一下:
一、打开aspnet_regsql.exe,单独使用以下语句将启动配置向导,你也可以利用命令行参数来完成配置过程。
v2.0.50727,可以在C:\WINDOWS\Microsoft.NET\Framework\下输入dir来获取.NET的版本号
image1.gif
MSDN关键字:Aspnet_regsql.exe可以查找相关参数配置的信息。
二、向导模式(在数据库中添加应用程序服务(成员资格、配置文件、角色管理、个性化设置(WebPart一类的)以及SQL Web事件提供程序)如果只需要单独添加其中的一项,请使用参数配置的方式,以下方式的默认参数为all)
image2.gif

image3.gif
按照提示选择合适的就可以了,默认选中的第一项是在原有的数据库基础上添加表和存储过程来完成配置。

image4.gif
在这里数据库选择你要添加的数据库,一般为应用程序所在的数据库。可以在下拉列表中选择。

image5.gif
点下一步开始使之前的配置生效,如果您需要修改可以点上一步返回修改后再执行下一步

image6.gif
点完成完成添加数据库的任务!

三、查看刚才选中的数据库,图中以"aspnet_"开头的都是为了这个配置所生成的表,请不要试图添加任何的字段,因为与此搭配的还有一大堆的存储过程,如果修改了表结构,那么将会有意想不到的错误。
image7.gif

四、在应用程序中访问,我们还需要做一些配置。
(1)、打开Web.config文件,确保已经有存在connnectString配置节
(2)、在<system.web>和</system.web>之间添加以下配置:

None.gif    <!--添加成员管理-->
None.gif    
<membership defaultProvider="SqlProvider" userIsOnlineTimeWindow="20">
None.gif      
<providers>
None.gif        
<remove name="AspNetSqlProvider" />
None.gif        
<add connectionStringName="WebAppBlogConnectionString" enablePasswordRetrieval="false"
None.gif            enablePasswordReset
="true" requiresQuestionAndAnswer="true"
None.gif            passwordFormat
="Hashed" applicationName="/" name="SqlProvider"
None.gif            type
="System.Web.Security.SqlMembershipProvider" />
None.gif      
</providers>
None.gif    
</membership>
None.gif    
None.gif    
<!--添加角色管理-->
None.gif    
<roleManager defaultProvider="SqlProvider"
None.gif      enabled
="true"
None.gif      cacheRolesInCookie
="true"
None.gif      cookieName
=".ASPROLES"
None.gif      cookieTimeout
="30"
None.gif      cookiePath
="/"
None.gif      cookieRequireSSL
="true"
None.gif      cookieSlidingExpiration
="true"
None.gif      cookieProtection
="All" >
None.gif      
<providers>
None.gif        
<add
None.gif          
name="SqlProvider"
None.gif          type
="System.Web.Security.SqlRoleProvider"
None.gif          connectionStringName
="WebAppBlogConnectionString"
None.gif          applicationName
="SampleApplication" />
None.gif      
</providers>
None.gif    
</roleManager>

其中的connectionStringName属性值都是指连接字符串的名字:
连接字符串类似:

None.gif  <connectionStrings>
None.gif    
<add name="WebAppBlogConnectionString" connectionString="Data Source=.;Initial Catalog=WebAppBlog;Integrated Security=True"
None.gif        providerName
="System.Data.SqlClient" />
None.gif  
</connectionStrings>
只有完成了以上配置后才能再ASP.Net Web应用程序管理中找到相应的连接选项。
否则将默认连接SQLServerExpress的AspNetSqlProvider提供程序,而以上配置中有句<remove name="AspNetSqlProvider" />就是为了把默认的移除。

五、点Web项目,项目-〉ASP.NET配置,事实上这个配置web程序就是为了配置以上这段配置节所提供的。
将启动IE,在“提供程序”选项卡中选择“为每项功能选择不同的提供程序(高级)”。
image8.gif

确保成员资格提供程序和角色提供程序都是刚才你在配置节中指定的“SqlProvider”
点测试完成连接测试。
image9.gif

转载于:https://www.cnblogs.com/jinzhao/archive/2007/07/26/832008.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值