NHibernate Web Application - Managing User Preferences

笑着哭i 提交于 2019-12-11 04:31:56

问题


I've got a web application with an NHibernate Data Access Layer. I have a large number of user preferences that can be stored, these are mainly booleans for example registering that a dialog has been dismissed and should not be showed again.

The problem is that with NHibernate I need to add to my database schema, and add a property to the persistent class every time a new dialog is added to register if it has been dismissed or not.

There must be an easier way. What is it?


回答1:


Another option is to read this post by Ayende, basically allowing for dynamic fields

A common theme in many application is the need to support custom / dynamic fields. In other words, the system admin may decide that the Customer needs to have a few additional fields that aren’t part of the mainline development.

Also read Ayende's last comment

  • You can put a collection in a dynamic property.
  • You can edit the configuration programatically

Edit For some reason I have just realised that I have answered this question that is over one year old! Got no idea how I got here! Answer is still a good one though




回答2:


You could use a settings table to store the preferences and add a value for every dialog:

Table Settings Id, UserId, DialogName, Value

1, 1, FirstDialog, True

2, 1, SecondDialog, False

3, 2, FirstDialog, False

4, 2, SecondDialog, False



来源:https://stackoverflow.com/questions/1929942/nhibernate-web-application-managing-user-preferences

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!