细节:
接口合同:
[OperationContract]
[WebGet(UriTemplate = "test")]
TestType TestOperation();
类型定义:
[System.Xml.Serialization.XmlRoot(ElementName = "Test", Namespace="http://test.net/", IsNullable=false)]
public partial class TestType {
实际结果:
<TestType xmlns=http://schemas.datacontract.org/2004/07/ …
预期结果:
<Test xmlns= http://test.net/ …
请指教。
最佳答案
该服务使用DataContractSerializer
序列化响应,因此需要数据协定名称空间。为了覆盖这一点,我建议如下将XmlSerialzeFormat属性应用于该操作...
[OperationContract]
[WebGet(UriTemplate = "test")]
[XmlSerializerFormat]
TestType TestOperation();