C# 从WebApi中删除XML命名空间

C# 从WebApi中删除XML命名空间,c#,xml,asp.net-web-api,C#,Xml,Asp.net Web Api,因此,我正在使用WebApi和XML 我只是在结果中不断收到一个奇怪的名称空间,例如: <QueryId>FE04A4E6-A584-47BF-9DA1-7360DFB08A8D</QueryId> <ExecutionError>true</ExecutionError> <OperationResult xmlns:d2p1="http://schemas.datacontract.org/2004/07/MyTypes" i:nil="

因此,我正在使用WebApi和XML

我只是在结果中不断收到一个奇怪的名称空间,例如:

<QueryId>FE04A4E6-A584-47BF-9DA1-7360DFB08A8D</QueryId>
<ExecutionError>true</ExecutionError>
<OperationResult xmlns:d2p1="http://schemas.datacontract.org/2004/07/MyTypes" i:nil="true"/>
<ErrorMessage>INVALID ACCOUNT</ErrorMessage>
但使用此参数,我的返回值与没有OperationResult标记的返回值相同(唯一未填写的返回值):

但它不起作用。在这种情况下,我的结果对象为空

有什么想法吗

多谢各位

使用该选项控制该成员为null时是否序列化

[DataMember(EmitDefaultValue = false)]
public CustomSourceRecord OperationResult { get; set; }
<QueryId>FE04A4E6-A584-47BF-9DA1-7360DFB08A8D</QueryId>
<ExecutionError>true</ExecutionError>
<ErrorMessage>INVALID ACCOUNT</ErrorMessage>
[DataContract(Namespace = "")]
public class CustomRecordResult
{
    [DataMember]
    public string             QueryId         { get; set; }
    [DataMember]
    public bool               ExecutionError  { get; set; }
    [DataMember]
    public string             ErrorMessage    { get; set; }
    [DataMember]
    public CustomSourceRecord OperationResult { get; set; }
}
[DataMember(EmitDefaultValue = false)]
public CustomSourceRecord OperationResult { get; set; }