Esempio n. 1
0
 /// <summary>
 /// 通用日志记录写入数据库方法(异步)
 /// 适用于 MIAP.Entities.Logs 下所有实现了 ILog 接口的日志实体类
 /// 仅适用于日志数据写入数据库操作
 /// 每个实体类对应一个数据库存储过程,对应关系为:SP_Logs_Create + 日志实体类名
 /// 如:CmdQueryLog 对应存储过程为:SP_Logs_CreateCmdQueryLog
 /// 所有存储过程的输入参数为 实体类的 公开成员名称,参数值为成员对应的值
 /// 所有存储过程均无返回值
 /// </summary>
 /// <typeparam name="T">日志类型</typeparam>
 /// <param name="log">日志内容</param>
 public static async void CreateLogs <T>(T log) where T : ILog
 {
     await Task.Run(() =>
     {
         Tuple <string, IEnumerable <string>, IEnumerable <object> > tupleResult = log.ToReflection();
         string logClassName    = tupleResult.Item1.Split(new char[] { '.' }, StringSplitOptions.RemoveEmptyEntries).Last();
         string dbProcedureName = string.Format("SP_Logs_Create{0}", logClassName);
         LogsData.ProcedureExecuteNonQuery(dbProcedureName, string.Join(",", tupleResult.Item2), tupleResult.Item3.ToArray());
     });
 }
Esempio n. 2
0
 void ShowLog(string msg)
 {
     Application.Current.Dispatcher.Invoke(new Action(() =>
     {
         LogsData.Insert(0, $"{DateTime.Now:yyyy-MM-dd HH:mm:ss} {msg}");
         if (LogsData.Count > 150)
         {
             LogsData.RemoveAt(LogsData.Count - 1);
         }
     }));
     LogInfo.Log.Info(msg);
 }
Esempio n. 3
0
    public static void SaveLogs(SuperLogger logsData)
    {
        Debug.LogError("HOLA ESTOY GUARDANDO");
        Debug.Log(path);
        BinaryFormatter formatter = new BinaryFormatter();

        FileStream stream = new FileStream(path, FileMode.Create);

        LogsData data = new LogsData(logsData);

        formatter.Serialize(stream, data);
        stream.Close();
    }
Esempio n. 4
0
    public static LogsData LoadLogs()
    {
        if (File.Exists(path))
        {
            BinaryFormatter formatter = new BinaryFormatter();

            FileStream stream = new FileStream(path, FileMode.Open);

            LogsData data = formatter.Deserialize(stream) as LogsData;

            stream.Close();

            return(data);
        }
        else
        {
            Debug.LogError("Save file not found in " + path);
            return(null);
        }
    }
Esempio n. 5
0
        public static void SaveLogData(string fileName)
        {
            if (!Directory.Exists(@"Logs"))         //若文件夹不存在则新建文件夹
            {
                Directory.CreateDirectory(@"Logs"); //新建文件夹
            }

            LogsData logData = new LogsData();

            logData.log = data2.log;
            FileInfo file = new FileInfo(Path + fileName);

            if (file.Directory.Exists == false)
            {
                file.Directory.Create();
            }
            using (Stream stream = file.Create())
            {
                System.Xml.Serialization.XmlSerializer xs = new System.Xml.Serialization.XmlSerializer(logData.GetType());
                xs.Serialize(stream, logData);
            }
        }
Esempio n. 6
0
        public static void LoadLogData(string path, string fileName)
        {
            if (!Directory.Exists(@"Logs"))         //若文件夹不存在则新建文件夹
            {
                Directory.CreateDirectory(@"Logs"); //新建文件夹
            }
            string   order = path + fileName;
            FileInfo file  = new FileInfo(order);

            if (file.Exists == false)
            {
                return;

                throw new FileNotFoundException();
            }
            LogsData logData = null;

            using (Stream stream = file.OpenRead())
            {
                System.Xml.Serialization.XmlSerializer xs = new System.Xml.Serialization.XmlSerializer(typeof(LogsData));
                logData = xs.Deserialize(stream) as LogsData;
                data2   = logData;
            }
        }
Esempio n. 7
0
 /// <summary>
 /// 判断用户是否第一次更新指定类型的个人信息(异步)
 /// </summary>
 /// <param name="log">日志内容(用户编号和更新类型字段)</param>
 /// <returns>判断结果</returns>
 public static bool IsFirstUpdateSelfInfoByUser(UserInfoUpdateLog log)
 {
     return(LogsData.UserUpdateSelfInfoCount(log) == 0);
 }
Esempio n. 8
0
    public override void  Load()
    {
        LogsData data = SaveLoadLogs.LoadLogs();

        logs = data.allLogs;
    }
Esempio n. 9
0
 public void Load()
 {
     outputText.text = logger.GetAllLogs();
     LogsData data = SaveLoadLogs.LoadLogs();;
     //outputText = data.allLogs;
 }
Esempio n. 10
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="item"></param>
 public void AddLog(LogData item)
 {
     LogsData.Add(item);
     OnPropertyChanged("LogsData");
 }