在WCF REST arrayList对象中重命名“ArrayOf”

时间:2015-03-04 09:18:22

标签: c# xml wcf rest

如何重命名前缀" ArrayOf"在我的根?当我发送请求或得到回复时。 " ArrayOf"附加到我的收藏名称。

方法:

  1. 我尝试使用CollectionDataContract,设置名称

    [DataContract(Name = "Employee", Namespace = "")]
    [CollectionDataContract(Name = "Employees", Namespace = "")]
    
  2. 设置XMLElement,XMLRoot

    [XmlRoot("Links")]
    [XmlElement]
    
  3. 使用新类创建元素

  4. 以上都不是神秘的。

    当前回报:

    <ArrayOfEmployee xmlns:i="w3.org/2001/XMLSchema-instance">
        <Employee>
          <EmployeeIdentifier>123</EmployeeIdentifier> 
          <EmployeeName>Test1</EmployeeName>
          <ProjectName>NE</ProjectName>
        </Employee> 
        <Employee>
          <EmployeeIdentifier>1234</EmployeeIdentifier
          <EmployeeName>Test2</EmployeeName>
          <ProjectName>NE</ProjectName>
        </Employee>
    </ArrayOfEmployee>
    

1 个答案:

答案 0 :(得分:0)

一种方法 - 您可以为员工数组创建一个包装类(Dataontract),例如“Employees”名称,并且具有List<Employee>

class Employees
{
    List<Employee> emps {get;set;}
}

另一种方法 - 如果响应是JSON,那将是:

 [ {/*employee structure goes here*/}, {...}  ]

希望它有所帮助,