Beispiel #1
0
        static ContextObject()
        {
            DefaultFormatter = MorestachioFormatterService.Default;
            DefaultFormatter.AddFromType(typeof(ObjectFormatter));
            DefaultFormatter.AddFromType(typeof(Number));
            DefaultFormatter.AddFromType(typeof(BooleanFormatter));
            DefaultFormatter.AddFromType(typeof(DateFormatter));
            DefaultFormatter.AddFromType(typeof(EqualityFormatter));
            DefaultFormatter.AddFromType(typeof(LinqFormatter));
            DefaultFormatter.AddFromType(typeof(ListExtensions));
            DefaultFormatter.AddFromType(typeof(RegexFormatter));
            DefaultFormatter.AddFromType(typeof(TimeSpanFormatter));
            DefaultFormatter.AddFromType(typeof(StringFormatter));
            DefaultFormatter.AddFromType(typeof(RandomFormatter));
            DefaultFormatter.AddFromType(typeof(Worktime));
            DefaultFormatter.AddFromType(typeof(Money));
            DefaultFormatter.AddFromType(typeof(HtmlFormatter));
            DefaultFormatter.AddFromType(typeof(LoggingFormatter));

            DefaultDefinitionOfFalse = value => value != null &&
                                       value as bool? != false &&
                                       // ReSharper disable once CompareOfFloatsByEqualityOperator
                                       value as double? != 0 &&
                                       value as int? != 0 &&
                                       value as string != string.Empty &&
                                       // We've gotten this far, if it is an object that does NOT cast as enumberable, it exists
                                       // OR if it IS an enumerable and .Any() returns true, then it exists as well
                                       (!(value is IEnumerable) || ((IEnumerable)value).Cast <object>().Any()
                                       );
            DefinitionOfFalse = DefaultDefinitionOfFalse;
        }