예제 #1
0
 void IGXDLMSBase.Load(GXXmlReader reader)
 {
     Entries.Clear();
     if (reader.IsStartElement("Entries", true))
     {
         while (reader.IsStartElement("Item", true))
         {
             GXScheduleEntry it = new GXScheduleEntry();
             it.Index  = (byte)reader.ReadElementContentAsInt("Index");
             it.Enable = reader.ReadElementContentAsInt("Enable") != 0;
             string ln = reader.ReadElementContentAsString("LogicalName");
             if (!string.IsNullOrEmpty(ln))
             {
                 it.Script = new GXDLMSScriptTable(ln);
             }
             it.ScriptSelector = (byte)reader.ReadElementContentAsInt("ScriptSelector");
             it.SwitchTime     = reader.ReadElementContentAsTime("SwitchTime");
             it.ValidityWindow = (byte)reader.ReadElementContentAsInt("ValidityWindow");
             it.ExecWeekdays   = (Weekdays)reader.ReadElementContentAsInt("ExecWeekdays");
             it.ExecSpecDays   = reader.ReadElementContentAsString("ExecSpecDays");
             it.BeginDate      = reader.ReadElementContentAsDate("BeginDate");
             it.EndDate        = reader.ReadElementContentAsDate("EndDate");
             Entries.Add(it);
         }
         reader.ReadEndElement("Entries");
     }
 }