我有一个类,其中包含大约20多个方法。每个都进行一些Web服务消息处理。我只需要对其进行更改,并意识到这些方法中的每一个都有完全相同的try/catch:try{/****actualprocessingspecifictoeachmethodgoeshere****/}catch(FaultExceptioncfex){//commonstuff}catch(CustomExceptioncfex){//commonstuff}catch(Exceptionex){//commonstuff}finally{FinalizeServiceCall(wsBus,wsMessage,re
我有一个包含大约200多个方法的类,这些方法中的每一个都会调用数据库或网络资源。理想情况下,我想将每个调用包装在一个try/catch中,以捕获任何常见的网络或SQL异常,并让用户有机会重试(如果合适)。但是,将此代码添加到每个调用将非常耗时,并且就代码而言是臃肿的。我考虑过将每个方法调用包装在另一个方法中,创建一个委托(delegate),然后将委托(delegate)代码包装在try/catch中……就像这样……(忽略语法..这只是一个概念性的例子)boolCallUpdatePassenger(intPassengerId,stringPassengerName,stringPh
考虑这个场景:我有3层应用程序,当用户单击按钮时,按钮事件处理程序调用业务层中的一个方法,该方法对我的按钮事件处理程序提供的数据执行任何操作,然后将该数据传递给数据访问层,数据访问层将它们发送到后端数据库。问题是把trycatch放在哪里?在数据层、业务层、表示层还是将它放在所有这些层中?在这种情况下表示异常处理的最佳策略是什么? 最佳答案 我们跟随Donotcatchexceptionsifyoudonotknowwhattodowithit.我们从不处理任何我们无法处理或默认的异常。它冒泡了,我们在应用程序级别处理它。比如说,如
我有以下代码:HttpWebRequestrequest=(HttpWebRequest)WebRequest.Create(url);request.Method="HEAD";request.Credentials=MyCredentialCache;try{request.GetResponse();}catch{}如何捕获特定的404错误?WebExceptionStatus.ProtocolError只能检测到有错误发生,并不能给出错误的具体代码。例如:catch(WebExceptionex){if(ex.Status!=WebExceptionStatus.Protoco
这个问题在这里已经有了答案:关闭12年前。PossibleDuplicate:Dotry/catchblockshurtperformancewhenexceptionsarenotthrown?大家好,只是一个关于try..catchblock的快速问题。我听说它们使用起来很昂贵,不应该用作程序流程的一部分。但是,为了验证电子邮件地址,我使用了以下代码。try{MailAddresscheckEmail=newMailAddress(testEmail);returntrue;}catch{returnfalse;}由于事先进行了验证,所以我不会捕获很多异常,除非是试图绕过验证。我的
是一道面试题,很简单,但我对答案没有信心。如果在catchblock中发生异常会怎样?我想举一个面试官想问我的小程序的例子,如果它没有编译,请纠正我的程序,我真的很陌生。底线是如果Catch中发生异常会发生什么,以及callerinthatcase的值是多少。例如,我有以下内容:doubleCalculate(intx){try{x=x/2;}catch(Exceptionex){Console.Writeline("Message:"+ex.Message);}finally{x=10;}returnx;}doublemyResult=Calculate(x);//xcanbeany
关闭。这个问题需要detailsorclarity.它目前不接受答案。想改进这个问题吗?通过editingthispost添加细节并澄清问题.关闭9年前。Improvethisquestion我在SharePoint的自定义C#代码中嵌套了try-catchblock。当内部tryblock中的代码抛出异常时,我只想在一个catchblock(内部block)中执行代码。try{//dosomethingtry{//dosomethingifexceptionisthrown,don'tgotoparentcatch}catch(Exceptionex){...}}catch(Exce
这个问题在这里已经有了答案:关闭11年前。PossibleDuplicate:try/catch+using,rightsyntax我想try/catch以下内容://writetofileusing(StreamWritersw=File.AppendText(filePath)){sw.WriteLine(message);}我是将try/catchblock放在using语句内,还是围绕它,或两者兼而有之?
关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭5年前。Improvethisquestion有时我这样做,我也看到其他人也这样做:VB:TryDontWannaCatchIt()CatchEndTryC#:try{DontWannaCatchIt();}catch{}我知道我应该捕捉每一个重要的异常我期待并对此采取一些措施,但有时它并不重要-还是我做错了什么?tryblock的这种用法是否不正确,并且要求至少有一个catch或finallyblock表明了这一点?更新:现在我明白
有谁知道如何在try/catchblock中不使用XmlDocument.LoadXml()之类的东西来检查字符串是否包含格式正确的XML?我得到的输入可能是XML,也可能不是XML,我希望代码能够识别输入可能不是XML而不依赖于try/catch,以提高速度和一般原则,即非特殊情况不应引发异常(exception)。我目前有执行此操作的代码;privateboolIsValidXML(stringvalue){try{//Checkweactuallyhaveavalueif(string.IsNullOrEmpty(value)==false){//Trytoloadthevalu