2010-05-18 102 views
3

你將如何在ASP.Net MVC中實現用戶消息堆棧? (您對您的應用程序內的任何地方的用戶設置信息。它們顯示爲您的應用程序到應用程序內的任何地方的用戶提示)MVC:用戶消息堆棧實現

我想聽聽你的意見和想法。你會怎麼做?

例如爲:

User stack message example

回答

5

我會使用會話和cookie的組合來調節呈現給用戶的消息。通過這樣做,我可以減少用戶的煩惱因素,並儘可能少地向他們顯示消息。

在MVC我會使用局部視圖,你可以在所有網頁渲染,並且有它的行爲是獨立的網站。或者讓它具有情境意識。

編輯:

正如在評論中提到的,也可以是存儲在數據庫中的用戶相關的信息是個好主意。這可以允許將消息顯示給認證/已知用戶。 我原來的回答主要針對匿名用戶。

認證用戶,你可以有一個消息表,與讀/未讀位,甚至只需按下表,你推送消息,並從表中刪除他們,一旦用戶已經看到了。

您可能需要2部分系統。一個用於顯示給匿名用戶的消息。第二部分是針對認證用戶關於他們的個人資料/事件或與該網站相關的事件。

+0

嗨,亞歷山大,好:)。我認爲會話對於非持久性消息來說是一個很好的方法。但如果他們耐用(例如「你有一個新的徽章!!」),你需要堅持下去。 :)謝謝亞歷克斯+1 – SDReyes 2010-05-18 16:03:24

+1

我真的同意這就是爲什麼我提到了cookies。 將配置文件信息存儲在數據庫中,對於經過身份驗證的用戶來說也是一個好主意。 – 2010-05-18 16:05:04

+0

嗨,亞歷克斯!讀/不讀的位聽起來很棒。好主意。對於匿名用戶,我認爲我們可以爲每個會話自動生成一個GUID,並以與通過身份驗證的用戶相同的方式存儲消息,但使用會話GUID。例如音樂商店示例中的購物車http://www.asp.net/mvc/samples/mvc-music-store。謝謝Alex! +1 – SDReyes 2010-05-18 17:01:08