2015-01-10 12 views

回答

1

据我所知,这是行不通的。用户具有独特的Session,不能彼此访问。

你可以做的是写一个标志到你的数据库,然后刷新权限。 但是,每当用户执行操作时,这会导致数据库读取。

我们这样做的方式是向管理员显示一条消息,即用户必须注销并再次登录才能获得新的权限。

您也可以为用户提供重新加载权限的可能性。

+0

我认为你是对的,但能够使用户缓存无效的另一个想法是使用应用程序System.Web.HttpContext.Current.Application对象。我做了一个似乎在工作的概念项目的小小的证明。这个想法是,我在System.Web.HttpContext.Current.Application对象下存储用于描述缓存的userid键和对象 - 如果无效或无效。这可以被所有用户访问。因此,当用户从会话访问缓存时 - 首先检查该密钥。可以解释的图表在这里:https://dl.dropboxusercontent.com/u/46512232/Caching.pdf –

+0

你认为这是明智的吗?我不确定我想用数据依赖性来缓存缓存。应用程序将足够轻便 - 将具有一些小对象的关键和价值,但如果有成千上万的用户使用该系统,则不会是最好的,尽管只有当管理员使缓存无效时才会设置它 - 编辑用户权限。 –