【发布时间】:2015-09-30 13:53:37
【问题描述】:
我正在尝试在 camelCase 中发布 JSON,并按照此处的说明进行操作:
https://github.com/restsharp/RestSharp/wiki/Deserialization#overriding-jsonserializationstrategy
public class CamelCaseSerializerStrategy : PocoJsonSerializerStrategy
{
protected override string MapClrMemberNameToJsonFieldName(string clrPropertyName)
{
return char.ToLower(clrPropertyName[0]) + clrPropertyName.Substring(1);
}
}
然后我用这段代码创建一个新客户端:
var client = new RestClient(_baseUrl);
SimpleJson.CurrentJsonSerializerStrategy = new CamelCaseSerializerStrategy();
不过,在发出请求时,序列化程序并未激活。 RestSharp 文档到处都是,而且很大程度上不正确。看源码(RestRequest.AddBody),好像根本没有用到SerializerStrategy。
我正在寻找一种在客户端级别或不需要修改每个请求的地方进行此更改的方法。
我见过this blog - 也许这是唯一的方法。如果您只能在请求级别更改序列化策略,这对 RestSharp 来说似乎是一个巨大的退步。
【问题讨论】:
-
您可能想在创建新策略实例后尝试创建客户端
标签: json restsharp simplejson camelcasing