/// <summary>
        /// Determines if specified field will be initialized with specified value.
        /// </summary>
        /// <param name="field">Field specification</param>
        /// <param name="model">Binded model object</param>
        /// <param name="controllerContext">Controller context</param>
        /// <param name="modelBindingContext">Binding context</param>
        protected virtual bool EvaluateField(
            FieldSpecification <TModel> field,
            TModel model,
            ControllerContext controllerContext,
            ModelBindingContext modelBindingContext)
        {
            var valueProviderResult = modelBindingContext.ValueProvider.GetValue(field.Name);

            var context = new FieldBindingContext <TModel>(
                valueProviderResult,
                model,
                controllerContext,
                modelBindingContext);

            return(field.Condition(context));
        }
示例#2
0
 /// <summary>
 /// Determines if specified field will be initialized with specified value.
 /// </summary>
 /// <param name="field">Field specification</param>
 /// <param name="model">Binded model object</param>
 /// <param name="controllerContext">Controller context</param>
 /// <param name="bindingContext">Binding context</param>
 protected virtual bool EvaluateField(FieldSpecification <TModel> field, TModel model, ControllerContext controllerContext, ModelBindingContext bindingContext)
 {
     return(FieldIsEmpty(field.Name, model, controllerContext, bindingContext) &&
            base.EvaluateField(field, model, controllerContext, bindingContext));
 }