我的目标:我想解析目录号987654的 XML 文件并将其显示在文本框中。我的 XML 文件如下所示:
<?xml version="1.0"?>
<!-- This file was generated by the installer. -->
<ModificationMap>
<replace>
<replace>
<replace>
<!-- Changed Serial Number and Product ID -->
<text symbol="__EXAMPLE_SERIALNUMBER__">123456789</text>
<text symbol="__EXAMPLE_CATALOGNUMBER__">987654</text>
<text symbol="__MY_XMLPROGRAM__">300</text>
<text symbol="__REGISTRATION_EXAMPLE__">20</text>
<text symbol="__REGISTRATION_EXAMPLEVERSION__">20</text>
<!-- Asset Profile -->
<text symbol="__ASSET_MEMBERNAME__">MY_PROGRAM</text>
<text symbol="__ASSET_FRIENDLYNAME__">XMLFile</text>
<text symbol="__ASSET_DESCRIPTION__">XMLFile</text>
</replace>
<replace>
<delete>
<replace>
<replace>
</ModificationMap>
代码:
public Form1()
{
InitializeComponent();
var dict = XDocument.Load(@"C:\Users\Smith\Desktop\example.xml")
.Descendants("text")
.ToDictionary(f => f.Attribute("__EXAMPLE_CATALOGNUMBER__").Value,
f => f.Attribute("symbol").Value);
textBox1.Text = dict["__EXAMPLE_CATALOGNUMBER__"];
}
我收到一条错误消息,告诉我:
NullReferenceException 未处理。
我认为这种实现我的目标的方法是错误的。我是 C# 编码的新手。