我只是在网站管理工具中学习这方面的管理,建立了一个新的项目。我已经访问了后端的安全面板,并创建了一个管理角色,用于通过控制器过滤器访问视图。都是标准的东西。
但是,当我尝试与这个用户登录到前端时,它并不存在,我必须重新创建它。
或者,当我在前端创建一个用户,并试图在后端为他分配一个管理角色时,他也不存在。
只有在后端创建的用户才能在后端存在,并且可以指定角色。
前端用户和后端用户之间似乎没有任何联系。似乎有两个单独的数据库,一个容纳前端用户和一个后端用户。
授予后端用户管理权限似乎不适用于前端。
对于这个系统是如何工作的,有什么解释吗?我在没有帮助的情况下使用过谷歌。
发布于 2012-10-16 01:06:45
如果您使用的是标准的asp.net mvc 4应用程序,那么是的。这是意料之中的。
原因是MVC4默认使用一个名为SimpleMembership的不同成员资格提供程序,并且该提供程序与ASP.NET配置实用程序不兼容。该配置实用程序使用旧的成员资格提供程序,该提供程序具有完全不同的表。
你的选择是:
至于单独的数据库,是的。如果您注意到,您的web.config中没有成员资格配置。相反,ASP.NET Congifuration实用程序使用在machine.config中c:\windows\microsoft.net\framework[64]\config
中定义的默认成员资格配置。默认位置是位于App_Data目录下的项目目录中的一个名为aspnet.mdf的文件。
编辑:
有关新提供程序的更多信息,请参见:
http://weblogs.asp.net/jgalloway/archive/2012/08/29/simplemembership-membership-providers-universal-providers-and-the-new-asp-net-4-5-web-forms-and-asp-net-mvc-4-templates.aspx
另外:
http://geekswithblogs.net/Aligned/archive/2012/08/30/mvc-4-authentication.aspx
https://stackoverflow.com/questions/12905987
复制相似问题