gpt4 book ai didi

.net - 反序列化时如何配置ServiceStack.Text JsonSerializer 属性名称

转载 作者:行者123 更新时间:2023-12-04 11:26:39 30 4
gpt4 key购买 nike

我正在尝试使用 ServiceStack.Text 反序列化 JSON 数据具有非 C# 类属性命名约定的库,特别是蛇形大小写,如下所示:

{
"first_name": "Foo",
"last_name": "Bar"
}

我想将其反序列化为 POCO:
public class MyDto
{
public string FirstName { get; set; }
public string LastName { get; set; }
}

我目前只是这样做:
var dto = JsonSerializer.DeserializeFromString<MyDto>(dtoData);

但这不会识别属性名称。我以前在 Newtonsoft.Json 中克服了这个问题使用 custom ContractResolver .这应该如何使用 ServiceStack.Text 来完成?

我不想用 DataMember 装饰我的 dto 类属性,因为这似乎是数据源的问题,而不是 dto 本身,因此应该由执行反序列化的代码处理。

最佳答案

JsConfig适用于 ServiceStack's JSON and text serializers 的所有不同配置和自定义支持,例如:

JsConfig.Init(new Config { TextCase = TextCase.SnakeCase });

应该做你想做的。

关于.net - 反序列化时如何配置ServiceStack.Text JsonSerializer 属性名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14811912/

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