发布于 2016-06-12 22:58:47 | 69 次阅读 | 评论: 0 | 来源: 网友投递

这里有新鲜出炉的精品教程,程序狗速度看过来!

ASP.NET

ASP.NET 是.NET FrameWork的一部分,是一项微软公司的技术,是一种使嵌入网页中的脚本可由因特网服务器执行的服务器端脚本技术,它可以在通过HTTP请求文档时再在Web服务器上动态创建它们。 指 Active Server Pages(动态服务器页面) ,运行于 IIS(Internet Information Server 服务,是Windows开发的Web服务器)之中的程序 。


这篇文章主要介绍了ASP.NET mvc异常处理的方法,需要的朋友可以参考下
1.首先常见保存异常的类(就是将异常信息写入到文件中去)
 
public class LogManager 
{ 
private string logFilePath = string.Empty; 
public LogManager(string logFilePath) 
{ 
this.logFilePath = logFilePath; 
FileInfo file = new FileInfo(logFilePath); 
if (!file.Exists) 
{ 
file.Create().Close(); 
} 
} 
public void SaveLog(string message, DateTime writerTime) 
{ 
string log = writerTime.ToString() + ":" + message; 
StreamWriter sw = new StreamWriter(logFilePath, true); 
sw.WriteLine(log); 
sw.Close(); 
} 
} 

2、控制器异常处理

这种方式就在需要进行异常处理的controller中重写OnException()方法即可,因为它本身继承了IExceptionFilter接口
 
public class ExceptionController : Controller 
{ 
public ActionResult Index() 
{ 
throw new Exception("我抛出异常了!"); 
} 
protected override void OnException(ExceptionContext filterContext) 
{ 
string filePath = Server.MapPath("~/Exception。txt"); 
StreamWriter sw = System.IO.File.AppendText(filePath); 
sw.WriteLine(DateTime.Now.ToString() + ":" + filterContext.Exception.Message); 
sw.Close(); 
base.OnException(filterContext); 
Redirect("/"); 
} 
} 

3、过滤器异常处理
 
namespace MyMVC.Controllers 
{ 
public class ExceptionController : Controller 
{ 
[Error] 
public ActionResult Index() 
{ 
throw new Exception("过滤器异常!"); 
} 
} 
} 
public class ErrorAttribute : HandleErrorAttribute 
{ 
public override void OnException(ExceptionContext filterContext) 
{ 
base.OnException(filterContext); 
string path = filterContext.HttpContext.Server.MapPath("~/Exception.txt"); 
StreamWriter sw = System.IO.File.AppendText(path); 
sw.WriteLine(DateTime.Now.ToString()+":"+filterContext.Exception.Message); 
sw.Close(); 
} 
} 


最新网友评论  共有(0)条评论 发布评论 返回顶部

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务