我完全不熟悉ASP.NET的成員/角色。這是我第一次使用它,並且我第一次嘗試ASP.NET MVC。當我爲MVC創建我的第一個項目時,它給了我一個可愛的模板來創建一個帳戶。我很高興看到我不必手動執行此操作。但是,它失敗了,因爲它無法連接到SQL Server。我沒有SQL Server,我有MySQL。有沒有簡單的方法可以讓我的系統使用MySQL,或者我將不得不創建自己的身份驗證?用於MySQL的ASP.NET會員/角色提供者?
回答
明白了!使用的MySql Connector/Net 6.2.2.0版本,請按照下列步驟......
- 添加參考MySql.Web.dll
在web.config中更改
<membership>
這樣:<membership defaultProvider="MySqlMembershipProvider"> <providers> <clear/> <add name="MySqlMembershipProvider" type="MySql.Web.Security.MySQLMembershipProvider, MySql.Web, Version=6.2.2.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" autogenerateschema="true" connectionStringName="NAME_OF_YOUR_CONN_STRING" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" passwordFormat="Hashed" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" passwordStrengthRegularExpression="" applicationName="/" /> </providers> </membership>
- 運行項目| ASP.NET配置工具和安全選項卡上單擊測試
- 測試在ASP.NET 3.5中,MySQL服務器5.1版中,Windows XP 64位
點擊菜單Project,接着是ASP.NET Configuration。
這將在Data文件夾中爲您創建sql數據庫。
使用Visual Studio查看數據。
希望這會有所幫助。
編輯
我要補充一點,你就可以使用Ctrl + Alt + S看服務器資源管理器,然後這應該讓你看到你的數據庫有其表和數據。
您不應該需要安裝SQL。
我得到的工具終於來了(它比糖蜜慢),但我沒有看到任何數據庫。我去了安全標籤,並試圖選擇一個數據存儲。然後它給了我一個提供者列表,但只有一個(AspNetSqlProvider),但是這給了我同樣的錯誤(無法連接到SQL服務器)。 – 2010-01-10 23:11:38
在visual studio中,你現在可以看到aspnetdb.mdf文件了嗎?它應該在App_Data文件夾中。確保你正在顯示所有文件。 – griegs 2010-01-10 23:16:01
編號MDF = SQL Server。我做*不*擁有SQL Server。 – 2010-01-10 23:39:18
我曾與asp.net但我這樣做認爲它也可以用於mvc:hasangursoy.com.tr/aspnet-authorization-authentication-with-mysql
原始問題沒有指定使用哪個版本的ASP.NET & MVC。隨着最近發佈的.NET 4.5和MVC 4,我遇到了與OP相同的問題,但使用了新技術。這是我的quick fix for it大部分與Josh Stodola的答案相同的配置,但有一些額外的步驟。
<membership defaultProvider="MySqlMembershipProvider">
<providers>
<clear />
<add name="MySqlMembershipProvider"
type="MySql.Web.Security.MySQLMembershipProvider,
MySql.Web, Version=6.5.4.0, PublicKeyToken=c5687fc88969c44d"
autogenerateschema="true"
connectionStringName="*NAME_OF_YOUR_CONN_STRING*"
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="false"
requiresUniqueEmail="false"
passwordFormat="Hashed"
maxInvalidPasswordAttempts="5"
minRequiredPasswordLength="6"
minRequiredNonalphanumericCharacters="0"
passwordAttemptWindow="10"
passwordStrengthRegularExpression=""
applicationName="/" />
</providers>
</membership>
獲取的AccountController和視圖的工作:
- 刪除MVC 4的AccountController,AccountModels,帳戶查看文件夾和_LoginPartial共享視圖
- 創建一個新的MVC 3 web應用
- 複製MVC 3 AccountController,AccountModels,帳戶視圖文件夾和_LogOnPartial共享視圖進入您的MVC 4應用程序
- 替換
@Html.Partial(「_LoginPartial」)
與我共享_Layout視圖@Html.Partial(「_LogOnPartial」)
在我的方案中,我不需要從我的.NET Web應用程序連接到MySQL。因此,我通過兩件事來解決了這個問題:
1)卸載MySQL .NET Connector(所有版本) 2)在Web.Config文件中,刪除在MySQL安裝後添加的所有密鑰。 (否則,安裝前拷貝回原來的web.config文件,在.NET Web應用程序根目錄)
現在,我的.NET應用程序是BAC
必須經過類似的東西。
下面是MySQL官方的演練,幫助我:
Tutorial: MySQL Connector/Net ASP.NET Membership and Role Provider
注:在我的情況下,machine.config
要編輯是32位一個(他們沒有指定,和編輯64位一個沒有幫助)。
- 1. Postgres的ASP.NET會員/角色提供者?
- 2. asp.net會員和角色提供者
- 3. 選擇角色提供者 - ASP.net會員提供者
- 4. asp.net會員/角色提供商問題
- 5. 角色提供者/會員資格?如何在asp.net web api中?
- 6. 如何使用會員和角色提供者?
- 7. asp.net mvc和自定義成員資格和角色提供者
- 8. 刪除asp.net成員資格和角色提供者
- 9. 將ASP.NET身份用於角色提供者很容易
- 10. 角色提供者和System.Web.Security.Roles
- 11. 角色提供者:How To?
- 12. 角色提供者 - AccountModel
- 13. 將角色動態添加到asp.net角色提供者
- 14. 會員用戶在asp.net mvc c的成員資格提供者#
- 15. ASP.NET自定義角色提供者:角色取決於上下文嗎?
- 16. 刷新ASP.NET角色提供
- 17. ASP.NET會員提供工具
- 18. Asp.net會員提供判斷
- 19. ASP.NET角色提供者:使用sql server而不是sql express?
- 20. 沒有提供者的角色管理?
- 21. 組成員添加到自定義會員/角色提供
- 22. asp.net的默默無聞的角色提供者
- 23. ASP.NET MVC沒有數據庫的角色(也沒有角色提供者)
- 24. asp.net使用會員供應商來設置角色
- 25. SAP HANA XS和SAP UI 5成員和角色提供者
- 26. 簡單的會員提供者關係
- 27. ASP.NET默認的成員資格和角色提供API
- 28. ASP.NET成員資格和角色提供的配置問題
- 29. 外部角色提供者和編譯?
- 30. 什麼是角色提供者?
謝謝。這是一個很大的幫助。不要錯過添加defaultProvider! – Kildareflare 2013-03-31 23:16:30