2

可能是我的問題是瘋了。Asp.net MVC身份驗證如何驗證工作

1)ASP.net MVC是無狀態的,所以沒有參與此會議。

如何進行身份驗證模塊的工作,你有哪些你可以點我明白了基本的身份驗證的任何物品。

什麼都存儲在驗證信息。

[新手MVC]

+0

你是什麼意思「沒有涉及的會話」?也許你會將會話狀態與視圖狀態混淆 - 後者是一種僅適用於ASP.NET Forms的概念。 – 2011-03-10 11:52:31

回答

5

網絡是無狀態的。 ASP.NET和ASP.NET MVC都有創建應用程序狀態的機制。像MVC一樣倡導它,它爲開發人員提供了對狀態管理方式的更多控制,以及請求如何影響受管狀態,而不是Web窗體。 Web Forms封裝了不屬於MVC的ViewState狀態。 MVC模式允許您在更細粒度的級別上控制每個操作(包括管理應用程序狀態)。這可能是您認爲MVC是無狀態的想法。

作爲一個側面說明,你應該傾向於使用TempDataDictionary超過HttpSessionState用於存儲狀態相關的數據,因爲默認實現TempDataProvider是HttpSessionState的包裝)。該模式稍有不同,但好文章可以在http://www.gregshackles.com/2010/07/asp-net-mvc-do-you-know-where-your-tempdata-is/

ASP.NET(和MVC)的認證通常工作通過利用Forms Authentication被發現。它可以在您的web.config中配置。 ASP.NET Authentication Configuration

如果您的客戶端瀏覽器支持Cookie,默認行爲是存儲在cookie中的身份驗證票證。

2

誰告訴你的ASP.net MVC是無狀態的?無論如何,認證信息通常存儲在加密的cookie中。這和webforms在這方面完全一樣。

UPDATE

關於ASP.NET MVC,在這裏看到了很多讓你開始:http://www.asp.net/mvc

對於ASP.NET窗體身份驗證,請參閱MSDN

+0

我想我看到一些他們提到的無國籍的視頻。可能是我對此的理解不正確,請你能幫我加入並閱讀關於此的文章。我想清除這個神話。 – bhushanvinay 2011-03-10 12:01:42

+0

ASP .Net MVC有時在控制狀態('input','select'等)方面被稱爲無狀態。我猜這就是混淆可能來自哪裏。 – ilivewithian 2011-03-10 12:03:10

+0

@ilivewithian:沒有什麼能夠阻止你維護MVC中的輸入或選擇狀態。 – UpTheCreek 2011-03-10 12:42:48

0

從技術上講,如果您向每個請求發送HTTP頭授權,則可以無狀態。