C#最好的方式来保存XML数据
从Web服务请求数据并接收一个XML文件。不洪泛的服务好主意是缓存/存储XML,所以当应用程序再次启动时,它会使用缓存的XML 。收到的XML中的数据将每24小时更改一次,以便从旧请求应用程序传递过来的时间无论如何都必须创建新数据。C#最好的方式来保存XML数据
保持这些数据的最佳解决方案是什么?
编辑:也许使用SQLite保留一些历史?
你可以只是把它流到文件:
/// saving it :
System.Xml.XmlDocument doc = new System.Xml.XmlDocument();
System.IO.File.WriteAllText(filename, doc.Value);
/// loading it back in :
System.Xml.XmlDocument xdoc = new System.Xml.XmlDocument();
xdoc.LoadXml(System.IO.File.ReadAllText(filename));
是的,这可能是最常见的解决方案,但也许有一些更好的。(: – hs2d
我认为你需要改进你的问题。有几种方法可以做到这一点,但'最好'取决于你的要求。在你的场景中对你来说很重要吗? – LoveMeSomeCode
如果我理解正确,你可能会考虑将数据加载到一个XmlDocument
或XDocument
,它在高速缓存中有CacheDependency
存储:
XmlDocument xDoc = new XmlDocument();
if (Cache.Get("MenuData") == null)
{
xDoc.Load(Server.MapPath("/MenuData.xml"));
Cache.Insert("SiteNav", xDoc, new CacheDependency(Server.MapPath("/MenuData.xml")));
}
else
{
xDoc = (XmlDocument)HttpContext.Current.Cache.Get("MenuData");
}
虽然这是一个很好的解决方案,但是在应用程序重新启动之间,这并不会持久。 –
这个问题不是关于我所尝试过的。问题是要得到一些想法,这将是一个很好的方法来做到这一点! – hs2d