如何在 .net Core MVC 中读取 XML 文件?

pol*_*kop 5 xml asp.net-core-mvc

我在路径 Project/MyProjectName/Location_Data.xml 中有一个 xml 文件。里面的xml看起来像这样:

<?xml version="1.0" encoding="UTF-8"?>
<Root>
 <Item id="1" type="province" value="Province A">
   <Item id="101" type="district" value="District A">
     <Item id="10101" type="precinct" value="Precinct A" />
     <Item id="10102" type="precinct" value="Precinct B" />
     <Item id="10103" type="precinct" value="Precinct C" />
   </Item>
   <Item id="102" type="district" value="District B">
     <Item id="10201" type="precinct" value="Precinct D" />
     <Item id="10202" type="precinct" value="Precinct E" />
     <Item id="10203" type="precinct" value="Precinct F" />
   </Item>
</Item>
<Item id="2" type="province" value="Province B">
   <Item id="201" type="district" value="District C">
      <Item id="20101" type="precinct" value="Precinct A1" />
      <Item id="20103" type="precinct" value="Precinct C1" />
   </Item>
   <Item id="202" type="district" value="District D">
      <Item id="20201" type="precinct" value="Precinct D1" />
      <Item id="20202" type="precinct" value="Precinct E1" />
      <Item id="20203" type="precinct" value="Precinct F1" />
   </Item>
</Item>
</Root>
Run Code Online (Sandbox Code Playgroud)

我想阅读这个文件。我尝试使用XmlTextReader,但 Net Core 还不支持它。我也尝试使用XDocument.Load(Server.MapPath()),但它也不起作用。有什么建议吗?

J. *_*Doe 5

尝试使用XmlSerializer

简单的例子:

XmlSerializer xml = new XmlSerializer();
FileStream xmlStream = new FileStream("Patch/To/File.xml", FileMode.Open);
var result = xml.Deserialize(xmlStream);
Run Code Online (Sandbox Code Playgroud)