Ejemplo n.º 1
0
		public void TestTextQuery()
		{
			string textType = "text";
			var typeSetting = new TypeSetting(textType);
			typeSetting.AddStringField("message").Analyzer="whitespace";
			client.PutMapping(index, typeSetting);
			client.Refresh();

			var dict = new Dictionary<string, object>();
			dict["message"] = "the quick brown fox jumped over thelazy dog";
			var op= client.Index(index, textType, "text_k1", dict);
			Assert.True(op.Success);
			client.Refresh();
			var textQuery = new TextQuery("message", "fox");
			var result= client.Search(index, textType, textQuery);

			Assert.AreEqual(1,result.GetTotalCount());
		}
Ejemplo n.º 2
0
        public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
        {
            TextQuery term = (TextQuery)value;

            if (term != null)
            {
                writer.WriteStartObject();
                writer.WritePropertyName("text");
                writer.WriteStartObject();
                writer.WritePropertyName(term.Field);
                writer.WriteStartObject();
                writer.WritePropertyName("query");
                writer.WriteValue(term.Text);
                if (!string.IsNullOrEmpty(term.QueryType))
                {
                    writer.WritePropertyName("type");
                    writer.WriteValue(term.QueryType);
                }
                if (term.Operator != default(Operator))
                {
                    writer.WritePropertyName("operator");
                    writer.WriteValue(term.Operator.ToString().ToLower());
                }
                if (term.Slop != default(int))
                {
                    writer.WritePropertyName("slop");
                    writer.WriteValue(term.Slop);
                }

                if (!Equals(term.Fuzziness, default(float)))
                {
                    writer.WritePropertyName("fuzziness");
                    writer.WriteValue(term.Fuzziness);
                }

                if (!Equals(term.Boost, default(float)))
                {
                    writer.WritePropertyName("boost");
                    writer.WriteValue(term.Boost);
                }

                if (!Equals(term.PrefixLength, default(int)))
                {
                    writer.WritePropertyName("prefix_length");
                    writer.WriteValue(term.PrefixLength);
                }

                if (!Equals(term.MaxExpansions, default(int)))
                {
                    writer.WritePropertyName("max_expansions");
                    writer.WriteValue(term.MaxExpansions);
                }


                if (!string.IsNullOrEmpty(term.Analyzer))
                {
                    writer.WritePropertyName("analyzer");
                    writer.WriteValue(term.Analyzer);
                }

                writer.WriteEndObject();
                writer.WriteEndObject();
                writer.WriteEndObject();
            }
        }