在mvc中,在应用程序的整个生命周期中保持变量

时间:2015-07-29 11:19:27

标签: asp.net-mvc database entity-framework file variables

我需要在应用程序的整个生命周期中保持变量。它不应该永远不会被丢弃。

我在考虑两种方法:

  1. 保留文件
  2. 在单独的表格中存储在数据库中
  3. 但在第二种情况下,为一行创建一个单独的表并不是很聪明。 那么如何实现呢?

2 个答案:

答案 0 :(得分:2)

取决于属性的初始化位置:

  1. 它可以存储在应用程序范围内 -

    ASP.NET有不同的范围,其他范围是会话和请求

    ASP.NET Application State Overview

    ASP.NET Session State Overview

  2. 或者在Global.asax

  3. 中设置为静态属性
  4. 在Web.Config中设置为应用程序设置,如果它是不可变的

    <appSettings> <add name="fixedProperty" value="fixedValue" /> </appSettings>

    并使用

    引用应用程序中的任何位置

    ConfigurationManager.AppSettings["fixedProperty"]

    (虽然这个对配置的调用应该移动到一个静态的Settings文件,以便通过web.config的一个访问器调用可重用的属性 - 类型也可以从字符串转换为你可能需要的任何内容)

  5. 正如您已经提到的,坚持使用文件或数据库 - 将单个记录保存到数据库没有任何问题。这就是数据存储的用途。

答案 1 :(得分:-1)

您可以将该变量作为StaticData.java类中的静态变量,并将其与类名一起使用。如果只想在客户端访问变量,可以使用localstorage.set()。