- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
在我正在做的 C# 应用程序中
var settings = new ConnectionSettings(node);
settings.ModifyJsonSerializerSettings(new JsonSerializerSettings()
{ NullValueHandling = NullValueHandling.Include });
var client = new ElasticClient(settings);
但是它没有任何效果,空字段不会在 elasticsearch 中建立索引。
我的目标是设置序列化程序,使其包含对象中的所有空字段。还有其他方法吗?
最佳答案
要在 Elasticsearch 中存储/索引空值,您需要修改映射以处理空值。根据Mapping Core Types documentation
When there is a (JSON) null value for the field, use the null_value as the field value. Defaults to not adding the field at all.
这意味着如果您正在索引的文档中的某个字段存在空值,除非在该字段的映射中设置了 null_value
,否则 elasticsearch 不会将该字段添加到文档中。如何设置索引字段以接受空值的示例就像来自上述文档链接的示例。查看 message
字段...
{
"tweet" : {
"properties" : {
"user" : {"type" : "string", "index" : "not_analyzed"},
"message" : {"type" : "string", "null_value" : "na"},
"postDate" : {"type" : "date"},
"priority" : {"type" : "integer"},
"rank" : {"type" : "float"}
}
}
}
关于c# - 如何通过 ModifyJsonSerializerSettings 在 NEST 客户端中设置 NullValueHandling.Include JsonSerializerSettings,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24289118/
我有一个 .net core 3.1 应用程序。我使用库 json.net (newtonsoft) 来序列化或反序列化 json 。这是 newtonsoft 的应用程序设置: pu
目前,我想从我的 api 响应中排除空值,所以在我的 startup.cs 文件中,我有这个。 services.AddMvc() .AddJsonOptions(options =>
我正在尝试执行自定义序列化,所有快乐路径代码都有效,但空值路径的行为不符合我的意愿。 我已将序列化程序设置设置为 NullValueHandling.Ignore,并且对象图的其他为 null 的部分
我的服务器响应由一组已知和未知属性组成。对于已知的,我创建了一个 DTO 类,其中包含每个属性的成员。未知属性应放在用 [ExtensionData] 属性注释的字典中: [JsonObject(Me
我有这样一个类: [JsonObject] public class Condition { [JsonProperty(PropertyName = "_id")] public s
我有这样一个类: public class media { public string id { get; set; } public string code { get; set;
在我正在做的 C# 应用程序中 var settings = new ConnectionSettings(node); settings.ModifyJsonSerializerSettings(n
我有几个 DAO 文件,它们存储在 Azure DocumentDb 中,现在我希望 null 值不会存储在 DocDb 中,可以通过 [JsonProperty(NullValueHandling
using Newtonsoft.Json; namespace FAL.WebAPI2012.Controllers { public class Person {
我是一名优秀的程序员,十分优秀!