我正在写简单会员和角色提供者。 我正在尝试从帖子http://www.brianlegg.com/post/2011/05/09/Implementing-your-own-RoleProvider-and-MembershipProvider-in-MVC-3.aspx运行代码,但在运行IIS时显示错误:
Configuration Error
Description: An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately.
Line 39: <providers>
Line 40: <clear />
Line 41: <add name="LocalBankMembershipProvider" type="LocalBank.Helpers.LocalBankMembershipProvider, LocalBank" connectionStringName="LocalBankEntities" />
Line 42: </providers>
Line 43: </membership>
Message Parser Error: Target call threw an exception.
Line: 41
我在项目开始时犯了错误? 使用Nuget包将项目从mvc3转换为mvc4
我该如何解决此错误?
答案 0 :(得分:0)
您是否按照同一链接上的评论部分提供了建议?
很少有尝试:
可能是连接字符串错误,因此您会看到此错误。更改连接字符串(例如数据源)。如果您仍然发现问题,请调试项目并查看其确切位置以及您可以获得的更多信息。我能够重现这个问题,并且连接字符串的更改已经解决了。
调试时,您会看到它在检查角色时会抛出异常。根据博客,您需要添加默认角色“经理”:
唯一需要注意的是没有创建角色。如果您查看AccountController注册HttpPost操作,您会注意到通过此站点注册的任何用户都被赋予默认角色“Member”。这可以更改,但必须首先在Role表中创建此角色。您可以通过编写脚本(最可能是首选方法)来执行此操作,或者您可以编写一些hacky代码并快速调用它,因为它只需要在首次创建角色时运行一次。下面是一些示例代码,您可以使用它们来创建“成员”角色,根据您的需要进行修改。
LocalBankRepository repo = new LocalBankRepository();
repo.AddRole("Member");
repo.Save();
从代码中的某个位置调用这3行(或单独的 “初始化程序”项目)从那时起代码应该起作用 预期。对不起,感到困惑。
如果您仍然面临更多详情的问题分享。希望这会有所帮助。