草庐IT

circuit_breaking_exception

全部标签

c# - 模拟 DataReader 并获取 Rhino.Mocks.Exceptions.ExpectationViolationException : IDisposable. Dispose();预期#0,实际#1

我正在尝试模拟一个SqlDataReaderSqlDataReaderreader=mocks.CreateMock();Expect.Call(reader.Read()).Return(true).Repeat.Times(1);Expect.Call(reader.Read()).Return(false);Expect.Call(reader.HasRows).Return(true);Expect.Call(reader.Dispose);Expect.Call(reader["City"]).Return("Boise");Expect.Call(reader["State

c# - 为什么堆栈在 Exception.StackTrace 中被截断?

为什么堆栈的高位部分(在Exception.StackTrace中)被截断?让我们看一个简单的例子:publicvoidExternalMethod(){InternalMethod();}publicvoidInternalMethod(){try{thrownewException();}catch(Exceptionex){//ex.StackTraceheredoesn'tcontainExternalMethod()!}}这似乎是“设计使然”。但是这样奇怪的设计的原因是什么?它只会使调试变得更加复杂,因为在日志消息中我无法理解是谁调用了InternalMethod(),而通常

c# - 捕捉 System.Exception 总是不好的做法吗?

请考虑以下代码,它抛出三种不同的异常(即System.Configuration.ConfigurationErrorsException、System.FormatException和System.OverflowException):intSomeInt=Convert.ToInt32(ConfigurationManager.AppSettings["SomeIntValue"]);异常是不同的,所以在实践中我应该有三个不同的catchblock来处理每个特定的异常。但是,在这种特殊情况下,所有异常的处理方式都相同:将日志写入事件查看器,并显示一条通知配置错误的消息......在

c# - string.split() "Out of memory exception"读取制表符分隔文件时

我在我的C#代码中使用string.split()来读取制表符分隔的文件。我正面临下面代码示例中提到的“OutOfMemory异常”。这里我想知道为什么文件大小为16MB时会出现问题?这是正确的方法吗?using(StreamReaderreader=newStreamReader(_path)){//...........Loadthefirstlineofthefile................stringheaderLine=reader.ReadLine();MeterDataIPValueListobjMeterDataList=newMeterDataIPValueL

c# - 起订量参数 TargetParameterCountException : Parameter count mismatch Exception

以下是我的通用基础存储库界面publicinterfaceIRepository{IQueryableAllIncluding(paramsExpression>[]includeProperties);}我的实体publicclassSdk{publicSdk(){this.Identifier=Guid.NewGuid().ToString();}publicvirtualICollectionAccessibleResources{get;set;}publicstringIdentifier{get;set;}}下面是具体的repopublicinterfaceISdkRepo

c# - VS 2015 智能感知 : Exceptions Thrown not Previewed

我刚刚升级到VS2015企业版并且正在使用C#。在VS2013中,我能够将XML异常标记添加到我的方法中,并且在尝试使用该方法时,我会看到可以抛出哪些异常的预览。但是,在VS2015中,当我将鼠标悬停在我的方法调用上或尝试进行调用时,我无法预览可以抛出哪些异常。我如何让VS2015显示方法可以抛出哪些异常?下面是我的测试类。谢谢。对比2013对比2015 最佳答案 此问题已在VisualStudio2015Update1中得到解决。可以下载here. 关于c#-VS2015智能感知:Ex

c# - 如何在已编译的表达式树中调试或设置 break 语句?

当外部库包含LINQ提供程序时,它会在执行动态表达式树时抛出异常,我该如何在抛出该表达式时中断?例如,我使用第三方LINQ2CRM提供商,它允许我调用Max()IQueryable的方法|,但当它抛出一个InvalidCastException,当抛出异常时,我无法当场中断,因此很难查看堆栈跟踪,因为当调试器在我的代码中中断它时,它已经展开。我已经为提到的异常设置了“breakonthrow”。我的调试设置是:澄清我想要打破的确切位置。我不想在LINQ表达式中中断,而是想在执行表达式树时中断,或者换句话说,在执行IQueryable时中断。扩展方法Max()调用LINQ提供程序提供的覆

c# - LINQ to SQL Basic 插入引发 : Attach or Add not new entity related exception

我正在尝试插入一条记录。此代码有效但已停止工作我不知道为什么。这是代码:using(SAASDataContextdc=newSAASDataContext()){tblAssessmenta2=newtblAssessment();a2.AssessmentCentreId=centreId;a2.AttemptNumber=1;dc.tblAssessments.InsertOnSubmit(a2);dc.SubmitChanges();CurrentAssessmentId=a2.AssessmentId;}代码编译但在下面的dc.SubmitChanges();行抛出异常。抛出

c# - 为什么 c# 编译器需要在 switch 构造中使用 break 语句?

我很难理解为什么编译器需要使用break语句。不可能错过它,因为现在允许掉落。我看到了C或C++中断的原因,但这里是否需要中断。为什么在案件结束后中断不是内置行为?它不只是没有语义的语法吗?抱歉,如果这是一个愚蠢的问题。编辑:仅当案例为空时才允许掉落。当那里有语句时,你不能省略break语句。所以,这是另一回事。 最佳答案 编译器并不“需要”break语句,它需要它们。这是一个设计决定。它使代码在语义上接近C和C++,同时消除了一直是C语言的一个有争议的“特性”的失败陷阱。 关于c#-为

c# - Win32Exception 存储空间不足,无法处理此命令

通过我对MaxTo的自动崩溃收集我收到以下崩溃报告:V8.12.0.0-System.ComponentModel.Win32Exception-:VoidUpdateLayered():0Version:MaxTo8.12.0.0Exception:System.ComponentModel.Win32ExceptionErrormessage:NotenoughstorageisavailabletoprocessthiscommandStacktrace:atSystem.Windows.Forms.Form.UpdateLayered()atSystem.Windows.For