标签:filterContext baseDir WriteLog uname 过滤器 new 日志 public
一、mssql
-
默认端口 1433
-
默认数据库 用户名 sa
二、mysql
-
默认端口 3306
-
默认数据库 用户名 root
三、日志
public static void WriteLog(string log)
{
//获取当前目录
var baseDir = AppDomain.CurrentDomain.BaseDirectory+"/log/";
//文件名
var fileName = DateTime.Now.ToString("yyyyMMdd") + ".log";
//判断文件夹是否存在
if (!Directory.Exists(baseDir))
{
//不存在 创建文件夹
Directory.CreateDirectory(baseDir);
}
//完整路径
var newPath = baseDir + fileName;
//using 可以自动释放资源
using (FileStream fs = new FileStream(newPath, FileMode.Append,FileAccess.Write))
{
//借助 StreamWriter 来完成对文件的写操作
using (StreamWriter sw = new StreamWriter(fs))
{
sw.WriteLine(DateTime.Now+":"+log);
}
}
}
效果如下:
四、过滤器
在MVC中创建一个文件夹,添加两个类
public override void OnException(ExceptionContext filterContext)
{
//1、获取当前的异常行为
Exception ex = filterContext.Exception;
//2、写日志
FileHelper.WriteLog(ex.Message);
//3、重定向
filterContext.Result = new RedirectResult("/Default/Error");
//4、标记异常处理完成
filterContext.ExceptionHandled = true;
base.OnException(filterContext);
}
public override void OnActionExecuted(ActionExecutedContext filterContext)
{
if(filterContext.HttpContext.Session["UserName"]==null)
{
filterContext.Result = new RedirectResult("/Login/Index");
}
base.OnActionExecuted(filterContext);
}
登录的方法如下:
[HttpPost]
public ActionResult Login(string uname, string upass)
{
var result = loginBll.Login(uname, upass);
if (result!=null)
{
Session["UserName"] = result.UName;
FileHelper.WriteLog("用户名:" + uname + "登录成功");
return Json(1, JsonRequestBehavior.DenyGet);
}
else
{
FileHelper.WriteLog("用户名:" + uname + "登录失败");
return Json(0, JsonRequestBehavior.DenyGet);
}
}
标签:filterContext,baseDir,WriteLog,uname,过滤器,new,日志,public 来源: https://www.cnblogs.com/666l/p/15186920.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。