我只是尝试加载XML文件并不断收到此错误:
未处理的类型' System.AccessViolationException'发生在System.Xml.dll
中附加信息:尝试读取或写入受保护的内存。这通常表明其他内存已损坏。
这是我的代码......非常简单
string thirdParty = @"\3rdParty\";
string path = @"C:\code\depot\LALA\LALA";
string pathToXML = @"C:\code\";
List<string> thirdPartyPaths = new List<string>();
string[] xmlPaths = Directory.GetFiles(pathToXML, "*.xml", SearchOption.AllDirectories);
foreach (string element in xmlPaths)
{
if (element.Contains("input.xml"))
{
pathToXML = element;
}
}
XmlDocument xmldoc = new XmlDocument();
xmldoc.Load(pathToXML);
<?xml version="1.0" encoding="Windows-1252"?>
<ism_node>
<product name="SomeName">
<td>Client.ism</td>
<td>Server64.ism</td>
<td>Database.ism</td>
<td>AdminConsole.ism</td>
</product>
<product name="Backward Compatibilty Pack">
<td>ClientLibraryUpdate.ism</td>
</product>
<product name="Mobile SDK">
<td>MobileSDK.Installer.ism</td>
</product>
<product name="Snap">
<td>AdminConsole.Installer.ism</td>
<td>Client.Installer.ism</td>
</product>
</ism_node>
<module_node>
<module name="Standard Export">
<project>Stdexp.csproj</project>
</module>
<module name="">
<project></project>
</module>
</module_node>
经过调试后,我确认在尝试加载时我肯定会引用完整的XML路径。我不知道如何解决这个问题,并且已经花了好几个小时才找到了什么!
答案 0 :(得分:0)
事实证明我需要XML文档的根节点。我有多个根节点,并抛出此错误。我的新xml文档如下所示:
<li ng-click="toggleNetwork(isChecked)">
<i>{{isChecked ? 'check_box' : 'check_box_outline_blank'}}</i>
</li>