我需要为我的所有网站保存一个值,有没有一种方法可以将其保存在服务器端的全局变量中,例如ViewData,或者是否更好地将它保存在cookie中?ASP.NET MVC C#全局变量
该数据使用下拉列表进行设置并在控制器中捕获。
谢谢。
我需要为我的所有网站保存一个值,有没有一种方法可以将其保存在服务器端的全局变量中,例如ViewData,或者是否更好地将它保存在cookie中?ASP.NET MVC C#全局变量
该数据使用下拉列表进行设置并在控制器中捕获。
谢谢。
还可以使用会话这样的:
Session["MyKey"] = "MyValue";
和检索这样的:
var myVar = (string)Session["MyKey"];
如果每用户价值的。
希望这是帮助。
你可以把它存储在应用程序状态:
public ActionResult Foo()
{
HttpContext.Application["someKey"] = "some value";
...
}
再后来从中读取:
string value = (string)HttpContext.Application["someKey"];
存储在应用程序状态的值是该网站的所有用户共享。
如果您需要存储用户特定的数据,则可以使用会话或Cookie,具体取决于它是否是敏感数据。
如果您要更改值,如果值将是静态的,则会话将是方式&在应用程序加载任何数据之前已知,然后您可以将其存储在Web.config中并从中引用它。
如:
<appSettings>
<add key="MyStaticItem" value="Lulz" />
</appSettings>
那么接下来,如果你想中检索该字符串,你可以这样做:
Meh = ConfigurationManager.AppSettings["MyStaticItem"]
Meh
将Lulz
在在Global.asax页
void Application_Start(object sender, EventArgs e)
{
// set your variable here
Application["myVar"] = "some value";
}
里面的动作
public ActionResult MyAction()
{
// get value
string value = Application["myValue"].ToString();
// change value
Application["myValue"] = "some NEW value";
}
取决于它是用户特定的还是应用程序特定的 – jgauffin