private void mappingToolStripMenuItem_Click(object sender, EventArgs e) { foreach (TreeNodeAdv selectedNode in treeViewAdv1.SelectedNodes) { var elasticNode = (ElasticNode)(selectedNode.Tag); var index = elasticNode.IndexName; WriteLog("Get Index Mapping: {0}", selectedNode.Tag); elasticNode.Nodes.Clear(); //NOTE var mapNode = new ElasticNode("mapping"); elasticNode.Nodes.Add(mapNode); var mappings = currentElasticSearchInstance.GetMapping(index); WriteLog(mappings); JObject j = JObject.Parse(mappings); var VARIABLE = j[index]; var typeSetting = JsonSerializer.Get <Dictionary <string, TypeSetting> >(VARIABLE.ToString()); foreach (var setting in typeSetting) { var item = new ElasticNode(setting.Key); item.Tag = setting.Value; mapNode.Nodes.Add(item); foreach (var typeSetting1 in setting.Value.FieldSettings) { item.Nodes.Add(new ElasticNode(typeSetting1.Key)); } } } }
public void TestCreateParentChildType() { var index = "index_test_parent_child_type"; var parentType = new TypeSetting("blog"); parentType.AddStringField("title"); var client = new ElasticSearchClient("localhost"); client.CreateIndex(index); var op = client.PutMapping(index, parentType); Assert.AreEqual(true, op.Acknowledged); var childType = new TypeSetting("comment", parentType); childType.AddStringField("comments"); op = client.PutMapping(index, childType); Assert.AreEqual(true, op.Acknowledged); var mapping = client.GetMapping(index, "comment"); Assert.True(mapping.IndexOf("_parent") > 0); client.DeleteIndex(index); }