我需要爲我的所有網站保存一個值,有沒有一種方法可以將其保存在服務器端的全局變量中,例如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