我想创建一个静态实例JsonSerializer选项来自 System.Text.Json。该实例应该有一个自定义的转换器列表。所以,我的倾向是:
static readonly JsonSerializerOptions serializerOptions = new JsonSerializerOptions
{
// Error - Converters cannot be assigned to
Converters = new[] { new DateTimeOffsetConverter() }
};
The docs显示使用Add
一旦实例存在就添加转换器,例如:
var serializeOptions = new JsonSerializerOptions();
serializeOptions.Converters.Add(new DateTimeOffsetConverter());
对于静态字段有什么优雅的想法吗?
如果您只使用大括号,C# 的初始化语法实际上会调用“Add”:
static readonly JsonSerializerOptions serializerOptions = new JsonSerializerOptions
{
Converters = { new DateTimeOffsetConverter() }
}
您还可以使用静态初始化程序:
static readonly JsonSerializerOptions serializerOptions = new JsonSerializerOptions();
static MyClass(){
serializerOptions.Converters.Add(new DateTimeOffsetConverter())
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)