簡體   English   中英

MVC3 / MVC4中的簡單成員資格和角色提供程序

[英]Simple Membership and Role Provider in MVC3/MVC4

我在寫簡單成員資格和角色提供程序。 我正在嘗試從帖子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

如何解決此錯誤?

您是否遵循同一鏈接的“評論”部分中給出的建議?

可以嘗試的幾件事:

  1. 連接字符串可能是錯誤的,並且由於該原因您會看到此錯誤。 更改連接字符串(例如,數據源)。 如果仍然遇到問題,請調試項目並查看其確切卡在何處以及可以獲得更多信息。 我能夠重現此問題,並通過更改連接字符串解決了該問題。

  2. 調試時,您會看到它檢查角色存在時將拋出異常。 根據博客,您需要添加默認角色“經理”:

唯一要注意的是沒有創建角色。 如果查看AccountController Register HttpPost操作內部,您會注意到,通過此網站注冊的所有用戶都將獲得默認角色“成員”。 這可以更改,但是必須首先在“角色”表中創建該角色。 您可以通過編寫腳本(最有可能的首選方法)來執行此操作,也可以編寫一些hacky代碼並快速調用它,因為第一次創建角色時只需要運行一次即可。 這是一些示例代碼,可用於創建“成員”角色,對其進行修改以適合您的需求。

LocalBankRepository repo = new LocalBankRepository(); 
repo.AddRole("Member"); 
repo.Save(); 

從代碼中的某個地方(或單獨的“初始化程序”項目)調用這3行,然后從代碼開始應可正常工作。 對困惑感到抱歉。

如果您仍然遇到問題,請分享更多詳細信息。 希望這可以幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM