Ejemplo n.º 1
0
        public static void WriteServiceLog(string message, string logType, LogOpration logOpration = LogOpration.Default)
        {
            try
            {
                //logOpration设置优先级高于配置节logEnabled
                bool logEnabled = Convert.ToBoolean(System.Configuration.ConfigurationManager.AppSettings["LogEnabled"]);
                if (logOpration == LogOpration.Fobid || (logOpration == LogOpration.Default && !logEnabled))
                {
                    return;
                }
                else if (logOpration == LogOpration.Start || (logOpration == LogOpration.Default && logEnabled))
                {
                    //此处实现日志的记录

                    SysLog sysLog = new SysLog();
                    sysLog.Id         = Result.GetNewId();
                    sysLog.CreateTime = DateTime.Now;
                    sysLog.Ip         = GetIP();
                    sysLog.Message    = message;

                    sysLog.CreatePerson = AccountModel.GetCurrentPerson();
                    sysLog.MenuId       = logType;//哪个模块生成的日志

                    using (var sysLogRepository = new SysLogBLL())
                    {
                        ValidationErrors validationErrors = new ValidationErrors();
                        sysLogRepository.Create(ref validationErrors, sysLog);
                        return;
                    }
                }
            }
            catch (Exception ep)
            {
                try
                {
                    string path    = @"/up/mylog.txt";
                    string txtPath = System.Web.HttpContext.Current.Server.MapPath(path);//获取绝对路径
                    using (StreamWriter sw = new StreamWriter(txtPath, true, Encoding.Default))
                    {
                        sw.WriteLine((ep.Message + "|" + message + "|" + GetIP() + DateTime.Now.ToString()).ToString());
                        sw.Close();
                    }
                    return;
                }
                catch { return; }
            }
        }
        public static void WriteNotice(string message)
        {
            try
            {
                SysNotice entity = new SysNotice();
                entity.Id         = Result.GetNewId();
                entity.CreateTime = DateTime.Now;

                var account = AccountModel.GetCurrentAccount();
                if (account != null && !string.IsNullOrWhiteSpace(account.Name))
                {
                    entity.CreatePerson = account.Name;
                    entity.AccountId    = account.Id;
                }

                entity.Message = message;
                using (SysNoticeBLL sysNoticeRepository = new SysNoticeBLL())
                {
                    ValidationErrors validationErrors = new ValidationErrors();
                    sysNoticeRepository.Create(ref validationErrors, entity);
                    return;
                }
            }
            catch (Exception ep)
            {
                try
                {
                    string path    = @"mylog.txt";
                    string txtPath = System.Web.HttpContext.Current.Server.MapPath(path);//获取绝对路径
                    using (StreamWriter sw = new StreamWriter(txtPath, true, Encoding.Default))
                    {
                        sw.WriteLine((ep.Message + "|" + message + "|" + GetIP() + DateTime.Now.ToString()).ToString());
                        sw.Close();
                    }
                    return;
                }
                catch { return; }
            }
        }