Ejemplo n.º 1
0
 public ValidationResultManager(
     BehaviorInitializationContext context,
     FieldDefinitionGroup fieldGroup,
     ValueStage stage
     )
 {
     _resultField = new DynamicFieldAccessor <ValidationResult>(context, fieldGroup);
     _property    = context.Property;
     _stage       = stage;
 }
        public DynamicFieldAccessor(
            BehaviorInitializationContext context,
            FieldDefinitionGroup fieldGroup
            )
        {
            Check.NotNull(context, nameof(context));
            Check.NotNull(fieldGroup, nameof(fieldGroup));

            _field = context.Fields.DefineField <TValue>(fieldGroup);
        }
Ejemplo n.º 3
0
        public void Initialize()
        {
            _fieldDefinitions = new FieldDefinitionCollection();
            _valueGroup       = new FieldDefinitionGroup();
            _errorGroup       = new FieldDefinitionGroup();

            _nameField    = _fieldDefinitions.DefineField <string>(_valueGroup);
            _salaryField  = _fieldDefinitions.DefineField <decimal>(_valueGroup);
            _addressField = _fieldDefinitions.DefineField <Address>(_valueGroup);

            _salaryErrorField = _fieldDefinitions.DefineField <string>(_errorGroup);
        }
        public FieldDefinition <T> DefineField <T>(FieldDefinitionGroup group)
        {
            Check.NotNull(group, nameof(group));

            FieldGroupInfo info = EnsureGroup(group);

            FieldDefinition <T> field = new FieldDefinition <T>(
                parent: this,
                groupIndex: info.GroupIndex,
                fieldIndex: info.FieldCount
                );

            info.FieldCount++;

            return(field);
        }
        private FieldGroupInfo EnsureGroup(FieldDefinitionGroup group)
        {
            FieldGroupInfo info = _containedGroups.Find(g => g.Group == group);

            if (info == null)
            {
                info = new FieldGroupInfo {
                    Group      = group,
                    GroupIndex = _containedGroups.Count,
                    FieldCount = 0
                };

                _containedGroups.Add(info);
            }

            return(info);
        }
        public void DefineFields()
        {
            FieldDefinitionCollection fieldDefinitions = new FieldDefinitionCollection();
            FieldDefinitionGroup      valueGroup       = new FieldDefinitionGroup();
            FieldDefinitionGroup      errorGroup       = new FieldDefinitionGroup();

            FieldDefinition <string>  nameField        = fieldDefinitions.DefineField <string>(valueGroup);
            FieldDefinition <decimal> salaryField      = fieldDefinitions.DefineField <decimal>(valueGroup);
            FieldDefinition <string>  salaryErrorField = fieldDefinitions.DefineField <string>(errorGroup);

            Assert.AreEqual(0, nameField.GroupIndex);
            Assert.AreEqual(0, salaryField.GroupIndex);
            Assert.AreEqual(1, salaryErrorField.GroupIndex);

            Assert.AreEqual(0, nameField.FieldIndex);
            Assert.AreEqual(1, salaryField.FieldIndex);
            Assert.AreEqual(0, salaryErrorField.FieldIndex);
        }