首页 > 解决方案 > XML:DeepEquals 在下载和保存的下载文档上失败?

问题描述

我用它来比较文件

if (XNode.DeepEquals(cachedDocument, document))

让我们在这里做一个小科学。我从 API 下载我的 XML 文档,我基本上是在检查 2 个文档以确保最新的文档没有任何更改。基本上确保它自从我上次缓存 API xml 文件以来没有任何变化。

XDocument document = null;

if (useCachedDocuments && File.Exists(postCacheDirectory + "/photos/page " + (i + 1) + ".xml"))
{
    document = XDocument.Parse(postCacheDirectory + "/photos/page " + (i + 1) + ".xml");
}
else
{
    document = XDocument.Load(GetApiLink(pageAddress, i * 50, true));
}

if (i == 1 && File.Exists(postCacheDirectory + "/photos/page 1.xml"))
{
    var cachedDocument = XDocument.Load(postCacheDirectory + "/photos/page 1.xml");

    if (XNode.DeepEquals(cachedDocument, document))
    {
        Logger.Warn("We can start to use cached documents now, wayyyy faster :D");
        useCachedDocuments = true;
    }
    else
    {
        Logger.Warn("Sorry, no cache avalible here...");
    }
}

缓存的文档与我缓存的完全相同,我确实下载并保存了它。我肯定知道没有任何变化但DeepEquals失败了??

标签: c#.netxml

解决方案


推荐阅读