Example #1
0
        protected override Task OnInitializedAsync()
        {
            if (ValueType == typeof(string))
            {
                stringExpression = FunctionCompiler.CreateValidationExpressionGetter <TItem, string>(ValidationItem, Field);
            }
            else if (ValueType == typeof(decimal))
            {
                decimalExpression = FunctionCompiler.CreateValidationExpressionGetter <TItem, decimal>(ValidationItem, Field);
            }
            else if (ValueType == typeof(decimal? ))
            {
                nullableDecimalExpression = FunctionCompiler.CreateValidationExpressionGetter <TItem, decimal?>(ValidationItem, Field);
            }
            else if (ValueType == typeof(double))
            {
                doubleExpression = FunctionCompiler.CreateValidationExpressionGetter <TItem, double>(ValidationItem, Field);
            }
            else if (ValueType == typeof(double?))
            {
                nullableDoubleExpression = FunctionCompiler.CreateValidationExpressionGetter <TItem, double?>(ValidationItem, Field);
            }
            else if (ValueType == typeof(float))
            {
                floatExpression = FunctionCompiler.CreateValidationExpressionGetter <TItem, float>(ValidationItem, Field);
            }
            else if (ValueType == typeof(float?))
            {
                nullableFloatExpression = FunctionCompiler.CreateValidationExpressionGetter <TItem, float?>(ValidationItem, Field);
            }
            else if (ValueType == typeof(int))
            {
                intExpression = FunctionCompiler.CreateValidationExpressionGetter <TItem, int>(ValidationItem, Field);
            }
            else if (ValueType == typeof(int?))
            {
                nullableIntExpression = FunctionCompiler.CreateValidationExpressionGetter <TItem, int?>(ValidationItem, Field);
            }
            else if (ValueType == typeof(long))
            {
                longExpression = FunctionCompiler.CreateValidationExpressionGetter <TItem, long>(ValidationItem, Field);
            }
            else if (ValueType == typeof(long?))
            {
                nullableLongExpression = FunctionCompiler.CreateValidationExpressionGetter <TItem, long?>(ValidationItem, Field);
            }
            else if (ValueType == typeof(bool))
            {
                boolExpression = FunctionCompiler.CreateValidationExpressionGetter <TItem, bool>(ValidationItem, Field);
            }
            else if (ValueType == typeof(bool?))
            {
                nullableBoolExpression = FunctionCompiler.CreateValidationExpressionGetter <TItem, bool?>(ValidationItem, Field);
            }
            else if (ValueType == typeof(DateTime))
            {
                dateTimeExpression = FunctionCompiler.CreateValidationExpressionGetter <TItem, DateTime>(ValidationItem, Field);
            }
            else if (ValueType == typeof(DateTime? ))
            {
                nullableDateTimeExpression = FunctionCompiler.CreateValidationExpressionGetter <TItem, DateTime?>(ValidationItem, Field);
            }
            else if (ValueType == typeof(DateTimeOffset))
            {
                dateTimeOffsetExpression = FunctionCompiler.CreateValidationExpressionGetter <TItem, DateTimeOffset>(ValidationItem, Field);
            }
            else if (ValueType == typeof(DateTimeOffset? ))
            {
                nullableDateTimeOffsetExpression = FunctionCompiler.CreateValidationExpressionGetter <TItem, DateTimeOffset?>(ValidationItem, Field);
            }
            else if (ValueType == typeof(TimeSpan))
            {
                timeSpanExpression = FunctionCompiler.CreateValidationExpressionGetter <TItem, TimeSpan>(ValidationItem, Field);
            }
            else if (ValueType == typeof(TimeSpan? ))
            {
                nullableTimeSpanExpression = FunctionCompiler.CreateValidationExpressionGetter <TItem, TimeSpan?>(ValidationItem, Field);
            }

            return(base.OnInitializedAsync());
        }