private ExpressionsListModel GetExpressionsList(String name, XElement logicXElem)
        {
            var expressionsByXElem = logicXElem.Element(name);

            if (expressionsByXElem == null)
            {
                return(null);
            }

            var expressionsModel = new ExpressionsListModel
            {
                Expressions = new List <ExpressionModel>()
            };

            foreach (var itemXElem in expressionsByXElem.Elements("Item"))
            {
                var model = new ExpressionModel
                {
                    Key        = (Guid?)itemXElem.Element("Key"),
                    Expression = (String)itemXElem.Element("Expression"),
                    OutputType = (String)itemXElem.Element("OutputType")
                };

                expressionsModel.Expressions.Add(model);
            }

            return(expressionsModel);
        }
Exemplo n.º 2
0
        private IEnumerable <String> GetExpressions(ExpressionsListModel model)
        {
            if (model == null || model.Expressions == null)
            {
                yield break;
            }

            foreach (var exp in model.Expressions)
            {
                if (exp != null && !String.IsNullOrWhiteSpace(exp.Expression))
                {
                    yield return(exp.Expression);
                }
            }
        }
Exemplo n.º 3
0
        private XElement GetExpressionsXElem(String name, ExpressionsListModel model)
        {
            if (model == null || model.Expressions == null)
            {
                return(null);
            }

            var expressionsByXElem = new XElement(name);

            foreach (var item in model.Expressions)
            {
                var itemXElem = new XElement("Item",
                                             new XElement("Key", item.Key),
                                             new XElement("Expression", item.Expression),
                                             new XElement("OutputType", item.OutputType));

                expressionsByXElem.Add(itemXElem);
            }

            return(expressionsByXElem);
        }