public void Read() { string strVisionConfigPath = VisionMgr.GetInstance().CurrentVisionProcessDir + "VisionMgr" + ".xml"; if (VisionMgr.GetInstance().CurrentVisionProcessDir == null && ParamSetMgr.GetInstance().CurrentProductFile == null && ParamSetMgr.GetInstance().CurrentProductFile == "" && !Directory.Exists(VisionMgr.GetInstance().CurrentVisionProcessDir)) { Directory.CreateDirectory(VisionMgr.GetInstance().CurrentVisionProcessDir); } dicVisionType.Clear(); dicVisionType = (SerialDictionary <string, StepVisionInfo>)AccessXmlSerializer.XmlToObject(strVisionConfigPath, dicVisionType.GetType()); dicVision.Clear(); if (dicVisionType == null) { dicVisionType = new SerialDictionary <string, StepVisionInfo>(); } foreach (var temp in dicVisionType) { Type type = AssemblyOperate.GetTypeFromAssembly(temp.Value.VisionType); object[] args = new object[] { temp.Key }; Add(temp.Key, Activator.CreateInstance(type, args) as VisionSetpBase); dicVision[temp.Key].Read(); dicVision[temp.Key].m_camparam = temp.Value.CamParam; } }
public object ReadParam2() { object obj2 = null; try { obj2 = AccessXmlSerializer.XmlToObject(AppDomain.CurrentDomain.BaseDirectory + @"\config\LightVal_" + LightName + ".xml", itemlightdic.GetType()); if (obj2 != null) { itemlightdic = (SerialDictionary <string, LightSet>)obj2; if (itemlightdic.Count == 0) { MessageBox.Show("lingt control 数据读取出错", "Err", MessageBoxButtons.OK, MessageBoxIcon.Error); logger.Error("lingt control 数据读取出错"); } } else { SaveItems(); } } catch { obj2 = null; } if (obj2 == null) { MessageBox.Show("lingt control 数据读取出错", "Err", MessageBoxButtons.OK, MessageBoxIcon.Error); } return(obj2); }
/// <summary> /// 序列化字典分数排序 /// </summary> /// <param name="sdicUser">序列化字典数据</param> /// <param name="Descending">是否降序</param> /// <returns></returns> private static SerialDictionary <string, UserData> ToSort(this SerialDictionary <string, UserData> sdicUser, bool Descending = false) { Dictionary <string, UserData> dic = sdicUser; dic = Descending ? dic.OrderByDescending(o => o.Value.grade).ToDictionary(o => o.Key, p => p.Value) : dic.OrderBy(o => o.Value.grade).ToDictionary(o => o.Key, p => p.Value); return(new SerialDictionary <string, UserData>(dic)); }