Beispiel #1
0
 public static bool TryParse(string line, out ProtocolMapConfigEnttity entity)
 {
     try
     {
         entity          = Parse(line);
         entity.HashCode = line.GetHashCode();
         return(true);
     }
     catch
     {
         entity = null;
     }
     return(false);
 }
Beispiel #2
0
        public static ProtocolMapConfigEnttity Parse(string line)
        {
            var objList = JToken.Parse(line);

            var entity = new ProtocolMapConfigEnttity
            {
                ItemId       = string.Empty,
                SerialString = string.Empty,
                Formula      = string.Empty,
                SubItem      = new Dictionary <string, ProtocolMapConfigEnttity>(),
            };

            foreach (var child in from JObject obj in objList select ParseJObject(obj))
            {
                entity.SubItem[child.ItemId] = child;
            }
            return(entity);
        }
Beispiel #3
0
        private static ProtocolMapConfigEnttity ParseJObject(JObject obj)
        {
            var entity = new ProtocolMapConfigEnttity
            {
                ItemId       = obj["text"].ToString(),
                SerialString = obj["CheckValue"].ToString(),
                Formula      = obj["Formula"] != null ? obj["Formula"].ToString() : string.Empty,
                ConfigType   = obj["AlarmType"] != null ? obj["AlarmType"].ToString() : "0",
            };

            if (obj["children"] != null && obj["children"].HasValues)
            {
                var array = JArray.Parse(obj["children"].ToString());
                entity.SubItem = new Dictionary <string, ProtocolMapConfigEnttity>();
                foreach (var subEntity in array.Select(item => ParseJObject((JObject)item)).Where(subEntity => !string.IsNullOrEmpty(subEntity.ItemId)))
                {
                    entity.SubItem[subEntity.ItemId] = subEntity;
                }
            }

            return(entity);
        }