jjzjj

breakpoints

全部标签

c# - 条件 C# 断点?

我正在调试一个foreach循环,它将迭代超过1000次-所以我只想在循环内设置一个断点以中断特定项目。所以...foreach(Employeeemployeeinemployees){//DOSOMETHING//BREAKHEREWHENemployee.Id=='2342'//DOSOMETHINGELSE}我是否必须编写一个If语句和其中的一些伪代码并以这种方式中断它?那是唯一的方法吗? 最佳答案 if(employee.Id=='2342')Debugger.Break();或者,您可以在VS中设置条件断点,但根据我的经

c# - 断点不会在 Silverlight 中中断

我无法在SilverlightWeb应用程序的服务器端命中断点。我知道代码会执行,因为我可以按照我的预期中断异步回调。只有我的机器有这个问题。我知道这似乎是一个常见问题,但是我看到的所有答案都没有帮助我,包括:断点为红色,表示它将被命中。在Web项目的属性上选中了Silverlight复选框。清理并构建解决方案。从源代码管理中获取新版本。清除了我的网络浏览器中的所有内容:缓存、cookie等...(我正在使用IE)。正在清除%windir%/Windows/Microsoft.NET/Framework/v4.0.30319/TemporaryASP.NETFiles中的临时文件。检查

c# - "The breakpoint will not currently be hit. A copy of file was found in dll file, but the current source code is different"

我不断收到此错误消息,提示存在.cs文件的副本,因此不会命中断点。我尝试过清理解决方案、重建、删除obj和bin文件夹中的.pdb文件、关闭VS并重新启动它、重新启动整个机器(这是Windows!有时最复杂、无法解释的问题会像这样解决:\)知道我还能尝试什么吗?这是VS2015上的.net项目 最佳答案 我发现了问题,原来IIS配置为使用我备份文件夹中项目的不同副本。这听起来很傻,但如果有人有类似的问题,我会保留这个问题。 关于c#-"Thebreakpointwillnotcurren

c# - 调试 - 如何逐行执行代码?

我很难在VisualStudio中调试我的C#应用程序。我不知道如何逐行调试代码,但不是在程序启动的那一刻(因为我不得不多次按F5,因为程序需要大约200行才能初始化)。我的意思是让我们假设我希望调试在某个时刻开始。比如在每一行代码中都有一个断点,但实际上没有创建断点(每次我想要创建它们都会花费很多时间)。我希望我有点清楚。 最佳答案 我不是完全清楚你在找什么......如果您不确定如何逐行单步执行,请在要开始逐行调试(或暂停应用程序)的地方放置一个断点,然后使用F10作为“越过”或F11作为“步入”而不是F5(“开始”)。如果您不

c# - Visual Studio Community 2015 调试器在带有 "Evaluation of native methods is not supported"的条件断点处结束 - 如何修复?

我有一个条件断点,条件检查字符串的值,如果为真则停止。它停止了,但随后打开一个窗口说:断点的条件无法执行...返回的错误是“评估方法System.Collections.Specialized.NameValueCollection.get_Item()调用native方法”System.Globalization.TextInfo.Internal.GetCaseInsHash().不支持在此上下文中评估native方法。'。单击“确定”在此断点处停止。我搜索了答案,但他们说启用托管兼容模式,但没有用。 最佳答案 在项目调试设置下

c# - 当托管语言中的数据更改时中断的断点

我有一个带有列表属性的类,在某些情况下似乎会丢失一个元素。我无法查明这是何时发生的。所以我想做的是设置一个VisualStudio断点,该断点将在该值更改时暂停程序。条件断点在这种情况下不起作用,因为我不知道删除此断点的原因。换句话说,我希望我的程序在myList.Count计算出一个新数字时停止。关于如何做到这一点有什么想法吗? 最佳答案 由于CLR的限制,这在C#或任何其他.NET语言中是不可能的。VisualStudionative代码调试器支持C++代码的数据断点(link),它正是这样做的,但托管代码不支持。您可以按照该问

c# - 无法调试 - "The breakpoint will not currently be hit. No symbols have been loaded for this document"

我在主题行中收到错误。我在服务器2k3sp2上运行vs2k8。我试过删除pdb、缓存目录,验证是否在特定页面上设置了调试。有趣的是其他页面调试得很好。就在我翻到这一页的时候。一定是配置问题,但页面指令如下所示:print("");我还注意到,在调试时,如果我打开模块窗口,几乎所有符号都显示“符号未加载”状态。然而,在对下面的msdn文章进行更多研究之后,其中一篇MSFT帖子说如果它是一个核心.netdll,它不会加载符号,所以我并不担心。某些Microsoft模块(如System.Enterpricesservices.wrapper.dll)显示一个感叹号,并显示消息“该模块未在默认

c# - 一个奇怪的 Visual Studio 2010 调试器案例(它不能命中断点)

一个奇怪的VisualStudio2010调试器案例(它不能命中断点)这是重现问题的代码:classProgram{staticvoidMain(string[]args){boolb=false;if(b){Listlist=newList();foreach(variteminlist){}}else{Console.WriteLine("1");}Console.WriteLine("2");//addabreakpointhereinVS2010}//1.configuration:release//2.platformtarget:x64orAnyCpu//3.debugin

c# - 在 Visual Studio 中以编程方式应用/停用断点

不管其他可能达到相同结果的选项(即添加断点手动),是否可以以编程方式将断点添加到VisualStudio项目的源代码中?如:try{FunctionThatThrowsErrors(objInscrutableParameters);}catch(Exceptionex){Log.LogTheError(ex);AddBreakPointToCallingFunction();}这样当你下次运行调试时,它会自动在上次运行时导致问题的所有点上设置断点。我并不是说这是一种特别有用的调试方法。我只是想知道是否有这种能力。 最佳答案 您可以

c# - 为什么调试器的断点条件允许赋值语句作为 bool 条件?

这非常危险,所以我想知道为什么允许这样做。由于我经常需要在VB.NET和C#之间切换,我有时会添加如下断点条件:foo="bah"如果string变量foo是"bah,我想停止,所以正确的方法是使用foo=="bah"而不是foo="bah"。但它“有效”。您不会在编译或运行时收到任何警告或错误。但实际上这修改变量foo,即使它有不同的值,它也总是"bah"。由于这种情况悄无声息地发生(断点永远不会命中),因此非常危险。为什么允许?我的推理错误在哪里(除了混淆C#和VB.NET语法之外)?在C#中(相对于VB.NET)一个assignmentstatement返回分配的值,因此在本例中