public void GroupByFunctions()
        {
            Context context = new Context(SetUpCodeFirst.Connection);

            var myGroupBy1 = context.TableWithSeveralFieldsTypes
                             .GroupBy(g => g.MyString, r => r.MyInt)
                             .Select(g => new { Group = g.Key, MyFirstInt = g.JetFirst() }).First();

            Console.WriteLine("{0} {1}", myGroupBy1.Group, myGroupBy1.MyFirstInt);

            var myGroupBy2 = context.TableWithSeveralFieldsTypes
                             .GroupBy(g => g.MyString, r => r.MyInt)
                             .Select(g => new { Group = g.Key, MyLastInt = JetFunctions.JetLast(g) }).First();

            Console.WriteLine("{0} {1}", myGroupBy2.Group, myGroupBy2.MyLastInt);

            context.Dispose();
        }
        public void StringFunctions()
        {
            Context context = new Context(SetUpCodeFirst.Connection);

            var myGroupBy2 = context.TableWithSeveralFieldsTypes
                             .GroupBy(g => g.MyString, r => r.MyInt)
                             .Select(g => new { Group = JetFunctions.LCase(g.Key), MyLastInt = JetFunctions.JetLast(g) }).First();

            Console.WriteLine("{0} {1}", myGroupBy2.Group, myGroupBy2.MyLastInt);
            Assert.AreEqual(myGroupBy2.Group, myGroupBy2.Group.ToLower());

            context.Dispose();
        }