有一种简单的方法可以在asp.net mvc应用程序中存储用户设置吗?例如,设置,例如他们想要通知的频率,发送通知的位置以及用户可以为自己个性化的任何其他内容。
.net中有一些内置的东西可以做到这一点吗?我想使用链接到该用户的foriegn密钥将设置存储在数据库中。
如果没有内置的.net功能,我如何设计数据库表进行设置? (只是一个例子)
答案 0 :(得分:7)
你想让他们坚持下去吗?如果它们不多,请将它们存储在cookie中。
如果您无法将它们存储在cookie中,请将它们存储在数据库表中:
UserPreferences
---------------
Id
UserId
PreferenceName
Value
如果你担心规范化以及所有这些,那么你总是可以添加另一个表:
Preferences
-------------
Id
Name
Type
您的UserPreferences表将变为:
UserPreferences
---------------
Id
UserId
PreferenceId
Value
我可以永远使用可能的表或持久性机制。问题是,这些是什么样的偏好?会议?寿命?
答案 1 :(得分:3)
内置.Net会员资格&角色引擎允许您存储用户配置文件信息。
Here's an intro on getting it running in MVC.
Here's a sample of someone using the API to talk to the store.
Here's some basics on the .Net Membership & Roles engine...
You'll want to focus on the Personalization part of the engine(webforms示例,但您应该能够适应)。
If for some reason you need more or to do it a bit differently you can create your own provider...
答案 2 :(得分:2)
你可以在数据库中有一个包含用户首选项的表:
Preferences
-----------
Id <- PK
UserId <- FK pointing to the User table
Setting1
Setting2
...