【发布时间】:2014-08-17 06:43:32
【问题描述】:
我正在使用带有DataContract 序列化的Web API。
输出如下所示:
<Data>
<Status>
<Date>2014-08-13T00:30:00</Date>
<ID>312</ID>
<Option>No Limitation</Option>
<Value i:nil="true" />
</Status>
<Status>
<Date>2014-08-13T01:00:00</Date>
<ID>312</ID>
<Option>No Limitation</Option>
<Value i:nil="true" />
</Status>
<Status>
<Date>2014-08-13T01:30:00</Date>
<ID>312</ID>
<Option>No Limitation</Option>
<Value i:nil="true" />
</Status>
<Status>
<Date>2014-08-13T02:00:00</Date>
<ID>312</ID>
<Option>No Limitation</Option>
<Value i:nil="true" />
</Status>
我可以通过以下方式删除所有额外的命名空间:
[DataContract(Namespace="")]
public class Status
但剩下的唯一属性是i:nil 属性。
我应该怎么做才能删除 i:nil 属性?
【问题讨论】:
-
这能解决你的问题吗:stackoverflow.com/questions/12465285/…,
DataMember(EmitDefaultValue = false)] -
@Prescott,这将完全删除空元素。我想要的是显示没有
i:nil属性的元素。
标签: c# asp.net-web-api datacontractserializer