将资源文件(.resx)存储到缓存中并从那里读取它

时间:2011-07-19 07:02:38

标签: asp.net asp.net-mvc

我正在使用资源文件来读取资源。我正在使用LINQ来读取资源。首先,我在XDocument中加载资源xml文件,然后通过LINQ查询xml以获取资源值。问题是,每当我需要读取资源值时,我必须一次又一次地加载资源文件,即每次都执行以下代码行:

XDocument resourceXML = XDocument.Load("path to resource file");

这反过来会对应用程序的性能产生影响。

我需要的是我希望资源XML存储在CACHE中,每次我需要读取XML以获取资源值时,我可以从缓存本身读取它而不是一次又一次地加载.resx文件。据我所知,这肯定会提高我的应用程序的性能。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

  

我正在使用资源文件来读取资源。我正在使用LINQ   阅读资源,首先我正在加载资源xml   文件在XDocument中,然后通过LINQ查询xml来获取   资源价值

你正在做的是为了读取存储在资源文件中的值而不是简单地使用自动生成的强类型类:ResourceName.SomeResourceKey

如果您的答案是是,我有我的理由,那么您可以查看System.Runtime.Caching命名空间,其中包含您在.NET应用程序中缓存数据所需的全部内容。例如,有MemoryCache类。在.NET 4.0中添加了System.Runtime.Caching程序集,因此如果您使用的是旧版本的框架,则可以使用ASP.NET Cache