public void Add(Entity entity, string parameterName, string expression, bool beforeTemperature, bool beforeLoad)
        {
            if (entity == null)
            {
                throw new ArgumentNullException(nameof(entity));
            }

            if (parameterName == null)
            {
                throw new ArgumentNullException(nameof(parameterName));
            }

            if (expression == null)
            {
                throw new ArgumentNullException(nameof(expression));
            }

            if (!CommonUpdates.ContainsKey(entity))
            {
                CommonUpdates[entity] = new EntityUpdate();
            }

            if (beforeLoad)
            {
                CommonUpdates[entity].ParameterUpdatesBeforeLoad.Add(
                    new EntityParameterExpressionValueUpdate()
                {
                    ParameterName = parameterName,
                    Expression    = new DynamicExpression(expression),
                });
            }

            if (beforeTemperature)
            {
                CommonUpdates[entity].ParameterUpdatesBeforeTemperature.Add(new EntityParameterExpressionValueUpdate()
                {
                    Expression    = new DynamicExpression(expression),
                    ParameterName = parameterName,
                });
            }
        }
        public void Add(Entity entity, string parameterName, double value, bool beforeTemperature, bool beforeLoad)
        {
            if (entity == null)
            {
                throw new ArgumentNullException(nameof(entity));
            }

            if (parameterName == null)
            {
                throw new ArgumentNullException(nameof(parameterName));
            }

            if (!CommonUpdates.ContainsKey(entity))
            {
                CommonUpdates[entity] = new EntityUpdate();
            }

            if (beforeLoad)
            {
                CommonUpdates[entity].ParameterUpdatesBeforeLoad.Add(
                    new EntityParameterDoubleValueUpdate()
                {
                    ParameterName = parameterName,
                    Value         = value,
                });
            }

            if (beforeTemperature)
            {
                CommonUpdates[entity].ParameterUpdatesBeforeTemperature.Add(
                    new EntityParameterDoubleValueUpdate()
                {
                    ParameterName = parameterName, Value = value
                });
            }
        }