2014-02-15 22 views
0

通常當我使用簡單的會員供應商時,我發現自己有限。 所以我決定創建自己的成員提供,但我升技失去..MVC創建我自己的會員供應商

是我到目前爲止已經完成:

  1. 創建一個新的類 公共類CustomMembershipProvider:系統.Web.Security.MembershipProvider ..

  2. 改變了我的Web.config文件,這樣我就可以用我自己的供應商..

  3. 現在我可以在我的控制器訪問這些功能是這樣的: var membership =(Testproject.Custom_Membership_Provider.CustomMembershipProvider)System.Web.Security.Membership.Provider;

接下來是什麼? 我希望能夠從我的數據庫檢索數據並進行更改。例如,獲取當前的用戶電子郵件並能夠更改它。

我在正確的軌道上嗎?你能給我一些關於這兩個功能的初學者幫助嗎?

另外..如果您不使用任何成員提供程序,自定義或簡單,您如何從數據庫中檢索和更改數據?你能舉個例子嗎?就像,檢索當前用戶並更改它的電子郵件。

我很感謝我能得到的所有幫助!謝謝你, /混淆老兄

回答

0
What's next? 

實現您需要的方法。如果您需要能夠檢索用戶信息,請執行

MembershipUser GetUser(string username,bool userIsOnline);

Am I on the right track here? 

那麼你爲什麼選擇推出自己的供應商,取決於問題?您也可以使用SimpleMembershipProvider來滿足您的共享示例。例如,如果您想爲用戶添加電子郵件,則可以將其添加到UserProfile表中並輕鬆檢索它。見例如here

Could you give me some starter help on those two functions? 

您需要基本實現你的選擇與數據庫(SQL Server)的CRUD操作和ORM(如EF)。一旦您有能力從數據庫的表中讀取和寫入數據,請創建一個表UserProfile。用戶註冊時,將用戶信息插入到其中。如果要驗證,請撥打ValidateUser()方法。由於您從MembershipProvider派生,您將不得不實施所有必需的方法。欲瞭解更多信息,請參閱本link

If you don't use any of the membership providers, custom or simple, how are you suppose to retrieve and change data from database? 

有兩個問題在這裏的討論,以驗證用戶(用戶認證),以存儲和檢索數據庫中的數據第二能力的一種能力。我相信你的問題是首先提及的。

ASP.NET通過身份驗證提供程序實現身份驗證,該身份驗證提供程序包含驗證請求程序憑據所需的代碼。更多信息here

如果您不想使用ASP.NET成員身份,則必須選擇另一個用戶身份驗證框架或滾動自己的帳戶(絕對不是成本效益高的方式)。