示例#1
0
 public WritableParameterDTO(IParameter parameter)
     : base(parameter)
 {
     //base rules are not added for editeable parameter. We need them in that case however
     if (!parameter.Editable)
     {
         Rules.Add(ParameterDTORules.ParameterIsValid());
     }
 }
示例#2
0
        public ParameterDTO MapFrom <TPropertyType, TParameterContainerDTO>(IParameter parameter, TParameterContainerDTO parameterContainerDTO,
                                                                            Expression <Func <TParameterContainerDTO, TPropertyType> > parameterValue,
                                                                            Func <TParameterContainerDTO, IParameterDTO> parameterDelegate) where TParameterContainerDTO : IValidatableDTO
        {
            var parameterDTO = _parameterMapper.MapFrom(parameter).DowncastTo <ParameterDTO>();

            parameterDTO.ValueChanged += (o, e) => parameterContainerDTO.AddNotifiableFor(parameterValue);
            parameterContainerDTO.Rules.Add(ParameterDTORules.ParameterIsValid(parameterValue, parameterDelegate));
            return(parameterDTO);
        }
        private void bindToParameter()
        {
            if (Parameter == null)
            {
                return;
            }

            Parameter.PropertyChanged += handlePropertyChanged;

            if (Parameter.Editable)
            {
                Rules.Add(ParameterDTORules.ParameterIsValid());
            }
        }