我需要为用户存储一个ID,该ID将在我的Web应用程序中执行的每个操作中使用。我曾希望使用自定义授权ActionFilterAttribute
(在整个控制器上)使用此附加信息填充ViewData
,但事实证明,在这些ActionFilterAttributes
之前运行了一整堆东西。做例如模型绑定,控制器构造
我想也许有一种方法可以扩展HttpContext.User.Identity
以存储其他数据,但不知道哪里可以开始。
有什么想法吗?
答案 0 :(得分:1)
<强>解强>
在StackOverflow上详细了解我遇到了这个完全符合我想要的解决方案,并且采用了超级干净且正确的方式(提示:它使用了userData
的{{1}}属性 - {{3} }
答案 1 :(得分:0)
一个选项是拥有一个全局(静态)ConcurrentDictionary
并存储有关身份/用户的任何其他信息 - 使用任何方便的密钥...因为这个字典是线程安全的并且主要实现无锁,它提供了出色的性能......这样你就不需要乱搞任何特定于ASP.NET的东西......