我开始使用 ASP.NET MVC (4)。
在整个应用程序中,我经常依赖员工密钥。我可以通过当前用户的用户名从数据库中获取此密钥,我可以通过User.Identity.Name
访问该用户名。
不是在整个控制器中重复查找,一次查找的正确方法是什么,并将其存储在一个变量中,然后可以通过所有控制器进行访问?
答案 0 :(得分:2)
您可以以这种方式将其保存在Cookie中:
Dim cookie As New HttpCookie("SomeNameForCookie")
以这种方式将变量放在这个cookie上:
cookie("Name1") = "Some Value Can be also integer etc"
cookie("Name2") = 2
要获取您的cookie:
HttpContext.Current.Request.Cookies.Get("SomeNameForCookie")
您从cookie中读取值的方式与放置值(cookie(“Name1”)等)相同。
您也可以以这种方式保存会话变量:
Session("Name3") = 3
第三种方式是创建控制器基类。从中继承所有/部分控制器。当它充满某些值(受保护或公共)时,它将在所有控制器中可用。