示例#1
0
        public void Ognl()
        {
            OgnlExprProvider ognlPrv = new OgnlExprProvider();
            var cntx = new Dictionary<string,object>();
            cntx["a"] = 7;
            object res = ognlPrv.Provide(new ExpressionContext<string>("@Convert@ToInt32(\"2\")+#a",cntx) );
            Assert.AreEqual(9,res);

            EvalOgnlCode evalOgnl = new EvalOgnlCode();
            IProvider<IDictionary<string,object>,bool> evalOgnlCond = evalOgnl;
            evalOgnl.Code = "null";
            Assert.AreEqual(false, evalOgnlCond.Provide(cntx) );
            evalOgnl.Code = "#a==7";
            Assert.AreEqual(true, evalOgnlCond.Provide(cntx) );
        }
示例#2
0
        public void Ognl()
        {
            OgnlExprProvider ognlPrv = new OgnlExprProvider();
            var cntx = new Dictionary <string, object>();

            cntx["a"] = 7;
            object res = ognlPrv.Provide(new ExpressionContext <string>("@Convert@ToInt32(\"2\")+#a", cntx));

            Assert.AreEqual(9, res);

            EvalOgnlCode evalOgnl = new EvalOgnlCode();
            IProvider <IDictionary <string, object>, bool> evalOgnlCond = evalOgnl;

            evalOgnl.Code = "null";
            Assert.AreEqual(false, evalOgnlCond.Provide(cntx));
            evalOgnl.Code = "#a==7";
            Assert.AreEqual(true, evalOgnlCond.Provide(cntx));
        }