Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用c#4.0缓存xml文件_C#_Asp.net_.net_Caching_.net 4.0 - Fatal编程技术网

如何使用c#4.0缓存xml文件

如何使用c#4.0缓存xml文件,c#,asp.net,.net,caching,.net-4.0,C#,Asp.net,.net,Caching,.net 4.0,我需要缓存正在读取的xml。我用的是C#4.0。有人能推荐一种最优雅/最好的方法来缓存xml文件吗。缓存的文件需要是一个单例文件,但包装器可能应该是一个单例文件 非常感谢,, James由于这是一个类库,您可以使用实例: MemoryCache cache = new MemoryCache("MemCache"); cache.Add("CachedXML", someXML, DateTime.Now.AddDays(1)); 这增加了跟踪内存缓存的开销,但允许您轻松指定保留期,并在需要时

我需要缓存正在读取的xml。我用的是C#4.0。有人能推荐一种最优雅/最好的方法来缓存xml文件吗。缓存的文件需要是一个单例文件,但包装器可能应该是一个单例文件

非常感谢,,
James

由于这是一个类库,您可以使用实例:

MemoryCache cache = new MemoryCache("MemCache");
cache.Add("CachedXML", someXML, DateTime.Now.AddDays(1));
这增加了跟踪内存缓存的开销,但允许您轻松指定保留期,并在需要时加载XML:

if(cache["CachedXML"] == null)
{
   //load xml and add to cache
}

这毫无意义。至少添加一个使用示例。环境是什么?如果是Asp.Net,那么您可能应该考虑使用
HostingEnvironment.Cache
。您不仅可以给它一个过期时间,还可以设置一个文件系统监视程序,使它在文件更改时自动使对象过期。如果您展示了您实际想要对该文件执行的操作,这会有所帮助。抱歉,这是一个类库。缓存需要持续24小时。这有帮助吗?好吧,我说的“类库”是指它可能在windows应用程序或web应用程序中@HenkHolterman是对的-我们需要一些代码来了解您想要实现什么,以及您将如何处理XML文件。很少有应用程序(甚至asp.net)能运行24小时。您希望缓存什么/如何缓存?Xml字符串,一个XDocument?