Exemple #1
0
        private static MasterDataField ParseField(XElement element)
        {
            var field = new MasterDataField
            {
                Value     = element.HasElements ? element.Value : null,
                Name      = element.Name.LocalName,
                Namespace = element.Name.NamespaceName
            };

            field.Children.AddRange(element.Elements().Select(ParseField));

            return(field);
        }
Exemple #2
0
        private static IEnumerable <MasterDataFieldDto> CreateFieldDto(MasterDataField field, short fieldId, MasterDataAttributeDto attribute, short?parentId)
        {
            var list = new List <MasterDataFieldDto>
            {
                MasterDataFieldDto.Create(field, attribute, fieldId, parentId)
            };

            foreach (var children in field.Children)
            {
                list.AddRange(CreateFieldDto(children, (short)(fieldId + list.Count), attribute, fieldId));
            }

            return(list);
        }
 public static MasterDataFieldDto Create(MasterDataField field, MasterDataAttributeDto attribute, int id, int?parentId)
 {
     return(new MasterDataFieldDto
     {
         Id = id,
         InternalParentId = parentId,
         MasterdataId = attribute.ParentId,
         MasterdataType = attribute.ParentType,
         ParentId = attribute.Id,
         Name = field.Name,
         Namespace = field.Namespace,
         Value = field.Value
     });
 }
Exemple #4
0
        private static void ParseField(IEnumerable <XElement> elements, IList <MasterDataField> output, MasterDataAttribute attribute)
        {
            if (elements == null || !elements.Any())
            {
                return;
            }

            foreach (var element in elements)
            {
                var field = new MasterDataField
                {
                    Name           = element.Name.LocalName,
                    Namespace      = element.Name.NamespaceName,
                    ParentId       = attribute.Id,
                    MasterdataId   = attribute.ParentId,
                    MasterdataType = attribute.ParentType,
                    Value          = element.HasElements ? null : element.Value
                };

                output.Add(field);
                ParseField(element.Elements(), field.Children, attribute);
            }
        }