需要说明一下几点
1、什么是提供程序?
2、ASP.NET 4.5 中的提供程序
3、配置提供程序
有一下几种存储状态的方式
1、应用程序状态
2、会话状态
3、高速缓存状态
4、cookie
5、查询字符串
6、隐藏字段
7、视图状态
那么来解决第一种问题。
1、什么是提供程序:
允许对数据存储、进程等进行编程访问的对象。
Asp.net 中的会话状态默认是以InProc方式存储,即存储在运行Asp.net的进程中,在Asp.net中可以改变用于Session对象的提供程序,这会改变存储会话的位置。
提供存储会话信息的提供程序有:
InPoc;
StateServer;
SQLServer;
在InProc可以利用StateServer 把会话存储在一个进程中,而该进程与运行Asp.Net的进程是完全独立的。如果ASP.NET进程停止,这就会保护会话进程。
SQLServer 把会话存储到磁盘上,这个方法可以直接把会话状态存储到Sql Server数据库中。
在IIS上设置:
ASP.Net 中基础提供者程序模型的系统要求有较高级的状态管理,这些系统包括:
成员资格
角色管理
站点导航
个性化
健康监控Web事件
配置文件保护
要使用以上几种需要使用sql server 数据库,并注册数据库,数据库名(aspnetdb)默认的名字:
主要一点如何注册呢?
两种方式:第一种 找到virtual studio ,找到
我的机器是64位的。如图中所选择的,打开输入命令 : aspnet_regsql.exe 后会弹出一个配置向导,
图上表示1的是通过命令注册,这就是第二种方式,查询相关的命令如图中2表示的命令。
配置成功后就会在machine.config 添加相关的配置信息。
machine.config 的路径是:C:WindowsMicrosoft.NETFrameworkv4.0.30319Config;
如图:
这里需要注意一个问题,每个应用程序都有一个web.config.程序,修改链接数据时,要在web.config上修改。
现在开始解决第二个问题,Asp.net 4.5 中的提供程序
成员资格提供程序:
System.Web.Security.SqlMembershipProvider :使用成员资格程序链接Sql server和Sql server Express Edition;
System.Web.Security.ActiveDirectoryMembershipProvider: 使用成员资格系统链接Active Directory(Windows Server可用)
他们都继承了MembershipProvider基类。
https://blogs.msdn.microsoft.com/webdev/2013/08/19/accessing-the-asp-net-web-configuration-tool-in-visual-studio-2013/