StringParser.cs 680 B

12345678910111213141516171819202122232425262728
  1. using fun.IO.Data;
  2. using System.Xml;
  3. namespace fun.IO.Parsers
  4. {
  5. internal sealed class StringParser : Parser
  6. {
  7. private IElementPropertyDataStore data;
  8. public StringParser(IElementPropertyDataStore data)
  9. {
  10. this.data = data;
  11. parsers = null;
  12. }
  13. public override bool TryParse(XmlNode node)
  14. {
  15. return data.Element.GetType().GetProperty(node.Name).PropertyType == typeof(string);
  16. }
  17. public override void Parse(XmlNode node)
  18. {
  19. var prop = data.Element.GetType().GetProperty(node.Name);
  20. prop.SetValue(data.Element, node.Value);
  21. }
  22. }
  23. }