是否可以更改documentDb的C#poco的默认序列化?例如,id-property似乎需要小写,但Id属性的默认序列化是大写.理想情况下,我们希望所有json属性都以小写字符开头.到目前为止我们找到的唯一方法是用[JsonProperty(PropertyName ="id")]装饰属性,但它不是很优雅.
我使用类型化的DocumentQuery从Azure DocumentDb的集合中读取文档.
from f in client.CreateDocumentQuery<MyModel>(Collection.SelfLink) select f
Run Code Online (Sandbox Code Playgroud)
因为我找不到如何设置neccesarry自定义json转换器的方法,所以它抛出了这个例子:
无法创建AbstractObject类型的实例.Type是接口或抽象类,无法实例化.
通常你会做这样的事情来使它工作:
var settings = new JsonSerializerSettings();
settings.Converters.Add(new MyAbstractConverter());
client.SerializerSettings = settings;
Run Code Online (Sandbox Code Playgroud)
DocumentClient没有任何SerializerSettings.所以问题是,如何在将json数据反序列化到我的模型时告诉DocumentDB客户端它必须使用自定义转换器?
我想使用自定义JsonSerializerSettings使用DocumentDb API创建文档。谁能告诉我该怎么做?
我尝试设置
JsonConvert.DefaultSettings = () => {
return new JsonSerializerSettings() {
ContractResolver = new CamelCasePropertyNameContractResolver()
};
};
Run Code Online (Sandbox Code Playgroud)