【发布时间】:2016-05-27 18:02:19
【问题描述】:
考虑存储在User集合中的文档{ "userName": "user1" },以及下面的User类:
public class User
{
public string Id { get; set; }
public string UserName { get; set; }
}
使用以下 JSON.net 设置:
JsonConvert.DefaultSettings = () =>
{
return new JsonSerializerSettings
{
ContractResolver = new CamelCasePropertyNamesContractResolver(),
};
};
当我像这样使用 Linq 查询时:
var t = _client.CreateDocumentQuery<User>(_collection.SelfLink)
.Where(u => u.UserName == "user1").AsDocumentQuery().ExecuteNextAsync();
t.Wait();
var users = t.Result;
var user = users.FirstOrDefault();
user 为空。将文档更改为具有帕斯卡外壳或将 POCO 更改为使用骆驼外壳可以解决此问题。当然,我不想要其中的任何一个,因为我希望我的 JSON 对象和 C# 对象被“标准化”。
如何告诉 DocumentDB SDK 使用驼峰式大小写映射我的对象的属性名称,类似于 JSON.net?
【问题讨论】:
-
this answer 能解决您的问题吗?这不完全是一个重复的问题,但我相信已发布的答案涵盖了您正在寻找的内容。
标签: azure-cosmosdb