我想将所有未处理的异常转移到Asp.NetMVC中的错误页面。Asp.netMVC中未处理异常的处理方法是什么?有没有类似application_error的东西? 最佳答案 检查HandleError属性。写的不错here. 关于c#-如何处理Asp.NetMVC中的一般异常?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/618550/
我注意到大多数异常消息不包含特定于实例的详细信息,例如导致异常的值。他们通常只告诉您错误的“类别”。例如,当尝试用3rd序列化一个对象时。派对库,我收到一个MissingMethodException消息:"Noparameterlessconstructordefinedforthisobject."在很多情况下这就足够了,但通常(通常在开发过程中)会出现这样的消息"Noparameterlessconstructordefinedforthisobjectoftype'Foo'."可以直接找到错误原因,从而节省大量时间。InvalidArgumentException是另一个例子:
我正在WebAPI中编写RESTfulAPI,但我不确定如何有效地处理错误。我希望API返回JSON,并且它每次都需要包含完全相同的格式——即使出现错误。以下是成功响应和失败响应的几个示例。成功:{Status:0,Message:"Success",Data:{...}}错误:{Status:1,Message:"Anerroroccurred!",Data:null}如果有异常——任何异常,我想返回一个像第二个响应那样形成的响应。执行此操作的万无一失的方法是什么,以便不会留下未处理的异常? 最佳答案 实现IExceptionHa
我使用Owin自托管和WebApi编写了简单的服务器:namespaceOwinSelfHostingTest{usingSystem.Threading;usingSystem.Web.Http;usingMicrosoft.Owin.Hosting;usingOwin;publicclassStartup{publicvoidConfiguration(IAppBuilderbuilder){varconfig=newHttpConfiguration();config.Routes.MapHttpRoute("Default","{controller}/{id}",new{id
我服务器上的一个ASP.NET应用程序在运行几天后开始抛出GDI+异常。重新启动服务器后,几天一切正常,然后突然再次出现此异常。第一次出现后,每次我尝试保存PNG图像时都会出现,直到我再次重新启动。当我尝试以JPEG格式保存图像时,它工作正常。当我从我的项目运行这段代码时,它失败了:varpath=@"C:\Project\images\logo.png";varimage=Image.FromFile(path);using(varms=newMemoryStream()){image.Save(ms,ImageFormat.Png);//FailshereonGDI+excepti
我想为我的数据库调用编写一些包装代码(使用C#和Microsoft技术来访问数据库),在出现“transient”异常时自动重试。我所说的暂时性是指最终很有可能会解决的事情(相对于永远不会起作用的逻辑错误)。我能想到的例子包括:僵局连接超时命令超时我曾计划使用SqlException的错误编号来发现这些错误。例如:ListresultSet=null;intlimit=3;for(inti=0;i(如有任何错误,请原谅-我只是临时写的。我也意识到我可以很好地把它包起来......)所以关键问题是:我应该将哪些数字视为“transient”(我意识到我认为的transient可能与其他人
问题:我想捕获来自类中任何方法的任何异常,以便我可以将类特定数据记录到异常中,以便在将其向上传递到堆栈之前进行日志记录。我知道我可以在类的每个方法中放置一个try-catch,但是方法有很多而且似乎应该有更有效的方法。我目前正在做的事情的例子:publicclassClassA{privateintx;privateinty;publicvoidMethod1(){try{//Somecode}catch(Exceptionex){ex.Data.Add("x",x);ex.Data.Add("y",y);throw;}}publicvoidMethod2(){try{//Someco
我在我的Web应用程序中使用ASP.NET的登录控件。当发生此异常时,我想在标签上显示一种有趣的错误类型System.Web.HttpRequestValidationException:ApotentiallydangerousRequest.Formvaluewasdetectedfromtheclient当用户尝试通过在登录控件的用户名文本字段中输入它们来进行sql注入(inject)攻击或某些HTML或SCRIPT操作时,就会发生这种情况。我尝试了很多事情,例如将身份验证登录包含在trycatchblock中并捕获System.Web.HttpRequestValidation
当我关闭最后一个窗口时,我的应用程序中出现未处理的异常:Anunhandledexceptionoftype'System.NullReferenceException'occurredinPresentationFramework.dllAdditionalinformation:Objectreferencenotsettoaninstanceofanobject.只有在应用程序的生命周期中,我通过我设置的某个进程打开一个子窗口时才会发生这种情况。该窗口存在于另一个程序集中,该程序集在运行时使用MEF动态加载,然后使用CaSTLe进行实例化。如果我随后调用某个方法,它会创建一个新的
我正在尝试编写一个方法来尝试执行一个操作,但会吞下引发的任何异常。我的第一次尝试如下:publicstaticvoidSafeExecute(ActionactionThatMayThrowException){try{actionThatMayThrowException();}catch{//noop}}在使用同步操作调用时有效:SafeExecute(()=>{thrownewException();});但是当使用异步操作调用时失败:SafeExecute(async()=>{awaitTask.FromResult(0);thrownewException();});是否可以