public static EventConfig FromXml(XElement element) { var obj = new EventConfig(); obj.DeviceName = (string)element.Attribute(nameof(obj.DeviceName)); obj.Type = (string)element.Attribute(nameof(obj.Type)); obj.Check(); return(obj); }
public static TriggerConfig FromXml(XElement element) { var obj = new TriggerConfig(); obj.Name = (string)element.Attribute(nameof(obj.Name)); if (element.Attribute(nameof(obj.StartTime)) != null) { obj.StartTime = TimeSpan.Parse((string)element.Attribute(nameof(obj.StartTime))); } if (element.Attribute(nameof(obj.EndTime)) != null) { obj.EndTime = TimeSpan.Parse((string)element.Attribute(nameof(obj.EndTime))); } obj.Events.AddRange(element.Elements("Event").Select(element => EventConfig.FromXml(element))); obj.Actions.AddRange(element.Elements("Action").Select(element => ActionConfig.FromXml(element))); return(obj); }