我是这方面的新生,目前正与WCF / Odata客户合作测试odata服务。
当尝试通过“DataServiceContext”添加一些新实体时,没有赋值的所有属性都将默认采用空值,没问题。当通过发送请求执行“添加”操作时,XML / JSON正文将始终包含“null”属性,这将导致一些问题。出于某些历史原因,我们无法对我们的服务进行更改。
在将实体对象序列化为JSON / XML时,有没有办法配置“DataServiceContext”的行为来忽略所有这些null属性?非常感谢!
此致 彼得
答案 0 :(得分:3)
我担心没有这样的标志让你忽略所有那些空属性。
但你可以试试RequestPipeline来解决。
dsc.Configurations.RequestPipeline.OnEntryStarting((arg) =>
{
arg.Entry.Properties = arg.Entry.Properties.Where((prop) => prop.Value != null );
});