【发布时间】:2015-10-29 09:26:11
【问题描述】:
我知道这是个愚蠢的问题,谁能帮我解决这个问题...?
在 C# 的输出下方需要,我正在使用“www.newtonsoft.com”json 生成器 dll。
使用 JsonConvert.SerializeObject 所需的输出:
{
"must": [
{
"match": {
"pname": "TEXT_MATCH"
}
},
{
"_bool": {
"rname": "TEXT_BOOL"
}
}
]
}
我的 C# 类设计如下:
public class Rootobject
{
public Must[] must { get; set; }
}
public class Must
{
public Match match { get; set; }
public Bool _bool { get; set; }
}
public class Match
{
public string pname { get; set; }
}
public class Bool
{
public string rname { get; set; }
}
我在 JsonConvert.SerializeObject 之后得到的输出如下:
{
"must": [
{
"match": {
"pname": "TEXT_MATCH"
},
"_bool": {
"rname": "TEXT_BOOL"
}
}
]
}
【问题讨论】:
-
详细说明。您面临什么问题?
-
我正在使用这个 json 文档作为对 elasticsearch 工具的查询,该工具接受 json 文档作为自身的输入。在这里,如果您看到“Must”类的所需输出是“match & bool”的容器,则这两个类都被一个额外的大括号(“{”)包围在其内部类周围。我无法使用 JsonConvert.SerializeObject 获得。有没有其他方法可以做到这一点?
-
是的..我注意到了。不幸的是,我不这么认为。额外的花括号已从 Newtonsoft 中删除。
标签: c# c#-4.0 elasticsearch json.net nest-api