XML文档不能包含多个根级元素。

7

我有一个代码列表,但出现了错误信息“XML 文档不能包含多个根级元素”。

<Employee>
  <Name ID= "JanRich">Janice Richardson</Name>
  <Role>Finance Supervisor</Role>
  <Department>Sales</Department>
  <CPF_Number>370-16-3631</CPF_Number>
  <Marital_Status>Single</Marital_Status>
  <Salary>$4,500</Salary>
</Employee>
<Employee>
  <Name ID= 'AlanWu'>Alan Wu</Name>
  <Role></Role>
  <Department>Research</Department>
  <CPF_Number>
    385-22-3311
  </CPF_Number>
  <Marital_status>Married</Marital_status>
  <Salary>$52,800</Salary>
</Employee>

错误发生在第一个 <Employee> 标签处。
4个回答

12

XML文档必须有一个且仅有一个根元素。您需要添加根元素,例如:

<?xml version="1.0" encoding="utf-8" ?> 
<Employees>
    <Employee>
       .....
    </Employee>
    <Employee>
       ....
    </Employee>
</Employees>

4
假设您想要打开该文档,您可以将XmlReaderConformanceLevel设置为ConformanceLevel.Fragment
XmlReaderSettings settings = new XmlReaderSettings();
settings.ConformanceLevel = ConformanceLevel.Fragment;

// input is a stream or filename
using (XmlReader reader = XmlReader.Create(input, settings)) {
    // use the reader
}

2
您只需要添加根元素即可解决您的错误.......
 <root>

    <Employee>   
      <Name ID= "JanRich">Janice Richardson</Name>   <Role>Finance Supervisor</Role>   
      <Department>Sales</Department>   <CPF_Number>370-16-3631</CPF_Number>     
      <Marital_Status>Single</Marital_Status>   <Salary>$4,500</Salary> 
    </Employee> 

   <Employee>   <Name ID= 'AlanWu'>Alan Wu</Name>   <Role></Role>        
     <Department>Research</Department>   <CPF_Number>     385-22-3311     
     </CPF_Number>        
     <Marital_status>Married</Marital_status>   <Salary>$52,800</Salary> 
   </Employee> 

 </root>

0
<?xml version="1.0" encoding="utf-8"?>
<ArrayOfTestClass>
  <testClass>
    <a>attr1</a>
  </testClass>
  <testClass>
    <a>attr2</a>
  </testClass>
</ArrayOfTestClass>

像这样


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接