using BO.Utils; using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace ButcherWeight { public static class WeightContext { //#if relase // private static string loginConfigPath = Application.StartupPath + "\\WeightSetting.xml"; //#endif //#if debug private static string loginConfigPath = @"C:\B3Service\src\B3ButcherManageClient\ButcherManageClient\bin\Debug\WeightSetting.xml"; //#endif private static WeightSetting _config; public static WeightSetting Config { get { if (_config == null) _config = CreateConfig(); return _config; } } static WeightSetting CreateConfig() { var config = new WeightSetting(); if (!File.Exists(loginConfigPath)) { XmlUtil.SerializerObjToFile(config, loginConfigPath); } else config = XmlUtil.DeserializeFromFile(loginConfigPath); return config; } public static void Save() { if (string.IsNullOrEmpty(_config.WeightSet)) throw new Exception("请选择称型号"); if (string.IsNullOrEmpty(_config.ComSet)) throw new Exception("请选择Com口"); if (_config.RateSet==null) throw new Exception("请选择波特率"); if (_config.BitSet == null) throw new Exception("请选择数据位"); if (string.IsNullOrEmpty(_config.Format)) throw new Exception("请填写显示格式"); try { string.Format("{0:" + _config.Format + "}", 1); } catch (Exception ex) { throw new Exception("显示格式填写错误\n" + ex.Message); } XmlUtil.SerializerObjToFile(_config, loginConfigPath); } } public class WeightSetting { public string WeightSet{get;set;} public string ComSet{get;set;} public int? RateSet{get;set;} public int? BitSet{get;set;} public string Format{get;set;} } }