コード例 #1
0
        /// <summary>
        /// Evaluates the expression
        /// </summary>
        public override void Execute()
        {
            ExpressionEvaluationService2 evaluator = new ExpressionEvaluationService2();

            try
            {
                this.WrappedContainer.AddService(evaluator.GetType(), evaluator);
                IDictionaryService dictservice = (IDictionaryService)
                                                 this.WrappedContainer.GetService(typeof(IDictionaryService), true);
                this.ReturnValue = evaluator.Evaluate(
                    this.Expression,
                    new ServiceAdapterDictionary(dictservice));
            }
            finally
            {
                this.WrappedContainer.RemoveService(evaluator.GetType());
                evaluator = null;
            }
        }