gpt4 book ai didi

c# - 继承时 Json 的奇怪行为

转载 作者:太空宇宙 更新时间:2023-11-03 21:06:09 25 4
gpt4 key购买 nike

我遇到了一种问题。

我有一个简单的 ErrorModel 类,它继承了 ICollection。

public class ErrorsModel : ICollection<string>
{
private ICollection<string> Errors { get; set; }
public bool HasErrors { get { return Errors != null && Errors.Any(); } }
public string PartialView { get; set; }
}

省略了 ICollection imp。因为它是标准的

当由 Controller Action Json 方法返回时

return Json(Errors)

结果是私有(private)错误对象

[
"Select a Country",
"Select a City"
]

然而,当您删除继承时,您将获得对象的完整序列化。

{
"Count": 2,
"HasErrors": true,
"IsReadOnly": false
}

所以我的问题是在继承时是什么导致了奇怪的序列化行为?

最佳答案

您的 JSON 序列化程序将所有集合类视为数组。

JSON 不支持数组和对象的混合。

关于c# - 继承时 Json 的奇怪行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41044803/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com