我正在尝试将下面的XML反序列化为C#类:
<StaffingOrder xmlns="NameSpaceName">
<ReportingRequirements>
<ns0:ManagerName>__MANAGER_NAME</ns0:ManagerName>
<ns0:SupervisorName>__SUPERVISOR_NAME</ns0:SupervisorName>
</ReportingRequirements>
<Comments>Comment</Comments>
</StaffingOrder>
但是在反序列化时,我得到以下错误:
Error: There was an error processing 'Test.xml'.
- 'ns0' is an undeclared prefix
我如何反序列化ns0标签。
最佳答案
XML文档的名称空间格式不正确,因为前缀ns0没有绑定到任何名称空间。这就是为什么无法对其进行分析的原因。
可以将其绑定到您选择的名称空间,并在其使用范围内的任何标记中使用xmlns:ns0属性,例如:
<StaffingOrder
xmlns="NameSpaceName"
xmlns:ns0="http://www.example.com/some/namespace">
<ReportingRequirements>
<ns0:ManagerName>__MANAGER_NAME</ns0:ManagerName>
<ns0:SupervisorName>__SUPERVISOR_NAME</ns0:SupervisorName>
</ReportingRequirements>
<Comments>Comment</Comments>
</StaffingOrder>
关于c# - ns0是反序列化XML时未声明的前缀,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38496088/