Example #1
0
        /// <summary>
        /// 写错误日志
        /// </summary>
        /// <param name="msg">消息</param>
        /// <param name="Ex">异常信息</param>
        public static void WriteLog(string msg, Exception Ex)
        {
            ErrorsData Log = new ErrorsData();

            try
            {
                if (!System.IO.Directory.Exists(System.Configuration.ConfigurationSettings.AppSettings["ErrorPath"]))
                {
                    System.IO.Directory.CreateDirectory(System.Configuration.ConfigurationSettings.AppSettings["ErrorPath"]);
                }

                if (System.IO.File.Exists(System.Configuration.ConfigurationSettings.AppSettings["ErrorPath"] + "\\Errors.xml"))
                {
                    Log = ReadLog();
                }
                DataRow row = Log.Tables[0].NewRow();
                row[ErrorsData.DESCRIPTION_Field] = msg;
                row[ErrorsData.DETAIL_Field]      = Ex.ToString();
                row[ErrorsData.DATE__Field]       = DateTime.Now;
                Log.Tables[0].Rows.Add(row);
                Log.WriteXml(System.Configuration.ConfigurationSettings.AppSettings["ErrorPath"] + "\\Errors.xml");
            }
            catch
            {
                return;
            }
        }
Example #2
0
        public bool ErrorsSet([FromBody] ErrorsData errors)
        {
            if (errors.NirsErrors == null || errors.NirsErrors.Length <= 0)
            {
                return(false);
            }
            FileErrors file = new FileErrors(Request.MapPath("..//data//"));

            file.Read();
            List <FileErrorsItem> items;

            if (file.ErrorsItems == null)
            {
                items = new List <FileErrorsItem>();
            }
            else
            {
                items = file.ErrorsItems;
            }
            foreach (var elem in errors.NirsErrors)
            {
                items.Add(new FileErrorsItem()
                {
                    Message    = elem.Message,
                    NameSource = elem.NameSource,
                    NameSystem = elem.NameSystem,
                    DateError  = elem.DateError
                });
            }
            file.ErrorsItems = items;
            file.Write();
            return(true);
        }
Example #3
0
 /// <summary>
 /// 读取错误日志信息
 /// </summary>
 /// <param name="path">错误日志信息文件</param>
 /// <returns>错误日志数据实体</returns>
 public static ErrorsData ReadLog(string path)
 {
     try
     {
         ErrorsData Log = new ErrorsData();
         Log.ReadXml(path, System.Data.XmlReadMode.IgnoreSchema);
         return(Log);
     }
     catch
     {
         return(null);
     }
 }
Example #4
0
 //Асинхронная отправка ошибок на сервер
 private async void SetToServerAsync(string adress) => await Task.Run(() =>
 {
     using (var client = new HttpClient())
     {
         try
         {
             NirsError[] errors = new NirsError[_nirsErrors.Count];
             int countr         = 0;
             foreach (var elem in _nirsErrors)
             {
                 errors[countr++] = new NirsError(elem.NameSource, elem.NameSystem, elem.Message, elem.DateError);
             }
             ErrorsData data = new ErrorsData(errors);
             HttpResponseMessage message2 = client.PostAsJsonAsync(adress + "Server/ErrorsSet", data).Result;
         }
         catch (Exception)
         {
             return;
         }
     }
     Clear();
 });