private void QueryBuildingTest() { Search.Query query = new Search.Query(); // The query.Add(new Search.Tokens.Term("The")); // The "big red" Search.Tokens.Phrase p1 = new Search.Tokens.Phrase(); p1.Tokens.Add(new Search.Tokens.Term("big")); p1.Tokens.Add(new Search.Tokens.Term("red")); query.Add(p1); // The "big red" dog^2 query.Add(new Search.Tokens.Term("dog", new Search.Modifiers.Boost(2))); // jumps OR over Search.Tokens.Group g1 = new Search.Tokens.Group(); g1.Tokens.Add(new Search.Tokens.Term("jumps")); g1.Tokens.Add(new Search.Tokens.Term("over", new Search.Operators.Or())); // The "big red" dog^2 (jumps OR over) query.Add(g1); //"The \"big red\" dog^2 (jumps OR over) [the TO yellow] query.Add(new Search.Tokens.Range("the", "yellow")); //"The \"big red\" dog^2 (jumps OR over) [the TO yellow] NOT bone query.Add(new Search.Tokens.Term("bone", new Search.Operators.Not())); //"The \"big red\" dog^2 (jumps OR over) [the TO yellow] NOT bone "but falls"~10 Search.Tokens.Phrase p2 = new Search.Tokens.Phrase(); p2.Tokens.Add(new Search.Tokens.Term("but")); p2.Tokens.Add(new Search.Tokens.Term("falls")); p2.Modifiers.Add(new Search.Modifiers.Proximity(10)); query.Add(p2); //"The \"big red\" dog^2 (jumps OR over) [the TO yellow] NOT bone "but falls"~10 t~en query.Add(new Search.Tokens.Term("t?en", new Search.Modifiers.SingleWildcard())); //"The \"big red\" dog^2 (jumps OR over) [the TO yellow] NOT bone "but falls"~10 t~en rolls~0.5 query.Add(new Search.Tokens.Term("rolls", new Search.Modifiers.Fuzzy(0.5f))); //"The \"big red\" dog^2 (jumps OR over) [the TO yellow] NOT bone "but falls"~10 t~en rolls~0.5 d* query.Add(new Search.Tokens.Term("d*", new Search.Modifiers.MultiWildcard())); string s = null; try { s = query.ToString(); } catch (Exception e) { string a = ""; } WriteLine(s); }