Beispiel #1
0
        private ParameterValue BuildParameterValueFromNode(XElement valueNode)
        {
            var parameterValue = new ParameterValue
                {
                    Value = valueNode.GetAttributeValueOrThrow(ValueNodeName)
                };

            foreach (XElement conditionNode in valueNode.Elements())
            {
                string name = conditionNode.Name.LocalName;
                Dictionary<string, string> attributes = conditionNode.Attributes()
                                                                     .ToDictionary(x => x.Name.LocalName, x => x.Value);

                parameterValue.FilterConditions.Add(FilterCondition.Create(name, attributes));
            }

            return parameterValue;
        }
Beispiel #2
0
        private XNode BuildNodeFromValue(ParameterValue value)
        {
            var valueNode = new XElement(ValueNodeName);
            valueNode.SetAttributeValueOrThrow(ValueNodeName, value.Value);
            foreach (FilterCondition condition in value.FilterConditions)
            {
                var conditionNode = new XElement(condition.ConditionName);

                foreach (var property in condition.Properties)
                {
                    conditionNode.SetAttributeValueOrThrow(property.Key, property.Value);
                }
                valueNode.Add(conditionNode);
            }
            return valueNode;
        }