我把我的 .Net Core 版本从预览版 2 升级到了预览版 6,这导致了一些问题。最重要的是我不能再使用 newtonsoft JSON。
在 ConfigureServices 中添加 NewtonsoftJson 似乎没有任何作用,而新的 Json 序列化器似乎只能处理属性而非字段,并且无法识别 JSONIgnoreAttribute。
在 Startup 中的 ConfigureServices 方法中,我有以下代码:
services.AddMvc(x => x.EnableEndpointRouting = false).AddNewtonsoftJson();
但它似乎没有按照预期工作。在我的应用中,只有属性被序列化,而不是字段,同时 [JSONIgnore]
属性也没有起到作用。
我可以通过将需要的公共字段升级为属性来解决字段缺失的问题,但是我需要忽略一些字段。
是否有其他人遇到类似的问题?如何让新的 JSON 序列化器忽略某些属性并序列化公共字段,或者回退到 Newtonsoft?
[System.Text.Json.Serialization.JsonIgnore]
代替使用Newtonsoft的JsonIgnore属性来解决问题。 - Drewman