static SqlNode() { Provider.Map <string>(s => s.Contains("whatever"), new StringContainsTranslator()); Provider.Map <string>(s => s.StartsWith("whatever"), n => string.Format("{0} like '' + {1} +'%'", n.Object, n.Arguments[0])); Provider.Map <string>(s => s.EndsWith("whatever"), n => string.Format("{0} like '%' + {1} + ''", n.Object, n.Arguments[0])); Provider.Map <string>(s => s.ToUpper(), n => string.Format("upper({0})", n.Object)); Provider.Map <string>(s => s.Equals(""), n => string.Format("{0} = {1}", n.Object, n.Arguments[0])); }