public void Visit(XElement element, ParsingContext context) { var table = context.Serializer.Deserialize <TableSchemaMetadata>(element); context.CurrentObject <List <TableSchemaMetadata> >().Add(table); context.PushObject(table); }
public void Visit(XElement element, ParsingContext context) { var field = context.Serializer.Deserialize <FieldSchemaMetadata>(element); context.CurrentObject <TableSchemaMetadata>().AddField(field); context.PushObject(field); }
private List <TableSchemaMetadata> parse(XDocument document) { var root = document.Root; var context = new ParsingContext(_services); var metadata = new List <TableSchemaMetadata>(); context.PushObject(metadata); root .Elements() .Each(_ => _elements.Visit(_, context)); context.PopObject(); return(metadata); }