我从WCF项目创建一个'List',我正在测试项目中使用该服务。在javascript中使用XMLSerializer,我能够创建XML结果。然而,这个'ExtensionData'标签非常烦人。
例如,
<?xml version="1.0"?>
<ArrayOfStudent xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Student>
<ExtensionData/>
<Name>Chris</Name>
<Age>72</Age>
</Student>
<Student>
<ExtensionData/>
<Name>Christine</Name>
<Age>2400</Age>
</Student>
我尝试添加
[ServiceBehaviorAttribute(IgnoreExtensionDataObject = true)]
public class StudentService: IStudentService
{
}
但是,没有运气..
答案 0 :(得分:1)
您是否尝试为List创建新类并使用[CollectionDataContractAttribute],因为在您的情况下.Net为List创建了一个新类型并将其命名为ArrayOfStudent。
这可以解决您的问题。
public StudentList ListStudents()
{
// return new List<student>();
return new StudentList();
}
[CollectionDataContract()]
public class StudentList : List<Student>
{}