我目前正在使用CodeFirst和使用WebAPI 2.2的Odata V4。事实证明,EF代码首先需要在执行任何数据库操作之前实例化所有ComplexTypes,因此我更改了我的模型类以在实体的构造函数中实例化复杂类型。这有效,数据保存在数据库中。
问题: 在Odata上,复杂类型现在被序列化为复杂类型成员的所有空值。我希望从用户体验的角度来避免我的API。
{
"CorrelationInfo":{
"ParentIncidentId":null,"CorrelatedCount":0,"LastCorrelatedDate":null
}
}
正如您在上面的示例odata响应中所看到的,复杂类型中的所有属性都具有默认值。但我希望将其公开如下。
{
CorrelationInfo:null
}
如何解决此问题?或问题的任何替代方法?
答案 0 :(得分:0)
如何设置CorrelationInfo Nullable,复杂类型默认为Nullable,然后你只需设置
CorrelationInfo = null
而不是
new CorrelationInfo()
最后你可以得到:
{
CorrelationInfo:null
}
希望这有助于:)