我是新的ASP.NET MVC。我已經從PHP切換到它。什麼是最好的方式來管理ASP.NET MVC中的用戶
在PHP中,當我創建一個管理用戶的頁面時,我經常創建表Users和Profiles並將數據存儲在其中。在ASP.NET中,有成員資格和配置文件提供程序。
所以,我的問題是,什麼是最好的方式來管理ASP.NET MVC中的用戶?我應該創建像PHP一樣的自定義表格和邏輯嗎?還是應該創建自定義提供者?
我知道,這個問題有很多類似的話題。但是,它們都不是我所需要的。
在此先感謝邁克。
我是新的ASP.NET MVC。我已經從PHP切換到它。什麼是最好的方式來管理ASP.NET MVC中的用戶
在PHP中,當我創建一個管理用戶的頁面時,我經常創建表Users和Profiles並將數據存儲在其中。在ASP.NET中,有成員資格和配置文件提供程序。
所以,我的問題是,什麼是最好的方式來管理ASP.NET MVC中的用戶?我應該創建像PHP一樣的自定義表格和邏輯嗎?還是應該創建自定義提供者?
我知道,這個問題有很多類似的話題。但是,它們都不是我所需要的。
在此先感謝邁克。
使用ASP.Net Memebership不重新發明輪子,
http://www.asp.net/mvc/tutorials/mvc-music-store/mvc-music-store-part-7
好的,謝謝大家,我已決定熟悉會員供應商,並且使用配置文件的強大功能來添加一些與用戶相關的附加信息。 – michy04 2012-03-23 20:01:16
也許應該說是沒有最好的方法。最好的是不明確的。
我想說有三種一般類型的方式來做用戶和角色與SQL服務器(我提到這是因爲你提到表)。
第一:使用內置的ASP.NET(webforms/mvc不可知)SqlMembership Provider。它包含人們管理用戶所需的大部分功能。這很可能是最快實施的,但卻是最不可擴展的。這將被強烈建議。
第二:構建您自己的[會員供應商],遵循會員供應商模式,但將您自己的邏輯從SQL引入到應用程序中。構建您自己的提供可能是一個相當漫長的過程,但您仍然可以獲得所有不錯的功能,並且可以用於其他項目,因爲它是它自己的提供者,並且不與應用程序綁定。
第三:從頭開始構建自己的邏輯。我不會推薦這個,除非你打算像獨立應用程序一樣構建它。
謝謝,這也是一個很好的意見,幫助我決定。 – michy04 2012-03-23 20:03:56
我同意奧斯卡和frenchie - 不要重新發明輪子。 ASP.NET會員提供商應該爲您提供一個良好的開端。然而,如果你是TDD的忠實粉絲,你可能會發現你需要在你可以控制的類中封裝成員提供者實現,以便處理嘲諷。會員供應商合同非常龐大且緊密結合,通過經驗發現,您最終只能使用該野獸的30-40%。創建您自己的合同並使用它與成員資格提供者進行交互。你稍後會感謝你。
祝你好運!
無需重新發明輪子;使用內置的成員資格提供程序。你會做的任何事情都會出錯並且不太安全。特別是如果你不熟悉.net框架。你需要一段時間才能發展微軟的工程師所建立的。 – frenchie 2012-03-23 19:19:28
@frenchie我不同意。與許多其他快速和骯髒的事情一樣,會員提供商對於快速和骯髒的事情(或演示)是有利的,並且不難想出更好的(滿足您的需求!)會員資格。根據我的應用需求構建我的會員供應商,並且以會員身份建立並不能正確滿足我的需求。幾年前我得出這個結論,我不記得每一個細節,但我記得我討厭使用GUID作爲用戶ID。 – MikeSW 2012-03-23 19:41:24