private void InsertPeople() { QueryTests.Insert(new Person { Age = 25, Name = "jane" }); QueryTests.Insert(new Person { Age = 60, Name = "deb" }); QueryTests.Insert(new Person { Age = 63, Name = "bob" }); QueryTests.Insert(new Person { Age = 74, Name = "alicia" }); QueryTests.Insert(new Person { Age = 34, Name = "joe" }); QueryTests.Insert(new Person { Age = 29, Name = "deb" }); QueryTests.Insert(new Person { Age = 21, Name = "carl" }); QueryTests.Insert(new Person { Age = 45, Name = "betty" }); }
public void LinqContains() { QueryTests.Insert(new House { Description = "this is a nice house" }); QueryTests.Insert(new House { Description = "not it is not" }); Console.WriteLine("houses with nice in description:"); QueryTests.AsQueryable <House>() .Where(h => h.Description.Contains("nice")) .ToList() .ForEach(h => Console.WriteLine(h.Description)); }
public void Evaluation() { // find all people in their 80s Console.WriteLine(Query.Mod("age", 10, 8)); // find all people who have a first name starting with A Console.WriteLine(Query.Matches("name", new Regex("^[aA]"))); // arbitrary javascript, slow! use in conjunction with non where queries that hit an index or really narrow down documents first var where = Query.Where("this.age === 1"); Console.WriteLine(where); Console.WriteLine("where matches:"); QueryTests.Insert(new BsonDocument { { "age", 2 } }); QueryTests.Insert(new BsonDocument { { "age", 1 } }); QueryTests.Find(where) .ToList() .ForEach(Console.WriteLine); }