ModelBinding\Binders\TryParseModelBinder.cs (8)
20private static readonly ParameterExpression ValueProviderResultExpression = Expression.Parameter(typeof(ValueProviderResult), "valueProviderResult");
22private static readonly MemberExpression ValueExpression = Expression.Property(ValueProviderResultExpression, nameof(ValueProviderResult.FirstValue));
23private static readonly MemberExpression CultureExpression = Expression.Property(ValueProviderResultExpression, nameof(ValueProviderResult.Culture));
25private readonly Func<ValueProviderResult, ModelBindingContext, object?> _tryParseOperation;
49var valueProviderResult = bindingContext.ValueProvider.GetValue(bindingContext.ModelName);
50if (valueProviderResult == ValueProviderResult.None)
107private static Func<ValueProviderResult, ModelBindingContext, object?> CreateTryParseOperation(Type modelType)
139return Expression.Lambda<Func<ValueProviderResult, ModelBindingContext, object?>>(expression, new[] { ValueProviderResultExpression, BindingContextExpression }).Compile();