在ASP.NET通用提供程序的自述文件中,NuGet包引用如下
通过版本4提供的SqlMembershipProvider、SqlRoleProvider、SqlProfileProvider类仅支持Microsoft和Microsoft。它们不支持新的产品,例如Microsoft和MicrosoftSQLServerCompact。
但是,当我为Sql http://support.microsoft.com/kb/2006191运行自定义http://support.microsoft.com/kb/2006191脚本,然后将我的web.config指向SQL数据库时,ASP.NET成员资格似乎是正确工作的。
有人能告诉我,什么东西不适用于SQL,这是通用提供程序所启用的吗?
发布于 2012-05-17 15:30:45
据我所知,主要的区别是,当您连接到Sql时,您需要实现重试逻辑。当连接错误发生时,原始提供程序不会重试,这将在SQL中不时发生。
此外,原始提供程序不会引发包含完整SQL错误代码的异常,因此,如果您的数据库处于节流状态,您将不知道应用的是哪个节流规则。至少这是SQL支持团队告诉我的--出于这个原因,我目前正在进行升级。
--注意事项:通用提供程序似乎使用了与原始提供程序不同的数据库模式,因此需要迁移成员资格数据。如果您正在启动一个新项目,那么在您与真正的用户一起生活之前,更改这些提供程序将更加容易!
发布于 2012-08-20 19:06:52
通用提供程序使您能够在sqlazure上使用asp.net成员资格系统,并且使实现sql不可知。您可以使用通用提供程序使用同一个应用程序,并将数据源更改为sql server/sqlexpress/sqlce/localdb等。
https://stackoverflow.com/questions/6940732
复制相似问题