【【C#】Visual Studio 2017 一边Debug,一边修改代码】教程文章相关的互联网学习教程文章

c# – Debug.WriteLine锁【代码】

我的程序经常因死锁而停止.当我进行一次破解并查看线程时,我看到三个线程卡在我们的日志记录功能中:public class Logging {public static void WriteClientLog(LogLevel logLevel, string message){#if DEBUGSystem.Diagnostics.Debug.WriteLine(String.Format("{0} {1}", DateTime.Now.ToString("HH:mm:ss"), message)); //LOCK#endif//...Log4net logging} }如果我让程序继续,线程仍然停留在该行上. 我看不出这可以锁定的地方.调...

c# – 堆栈跟踪行号错误,debug = false和compilerOptions =“/ debug:pdbonly”【代码】

我正在使用asp.net 3.5 在web.config中,我有debug = false和compilerOptions =“/ debug:pdbonly”来进行优化编译,并且仍然在我的堆栈跟踪中获取行号.这在大多数情况下都有效,但我的App_Code文件夹中的函数中有一个错误,堆栈跟踪表示错误在一行上可能不是错误. 我稍微使用了我的web.config设置,发现如果我设置了debug = true和compilerOptions = pdbonly,那么堆栈跟踪会说错误是直接在错误行之后的行.如果我删除compilerOptions =...

c# – 在Visual Studio Debugger中的自定义顺序中显示属性【代码】

在Visual Studio中,是否可以自定义在调试器中检查时显示属性的顺序? 这是一个类的例子,我真的希望StartDate和EndDate彼此相邻,即使它们按字母顺序分开. 其他调试器选项可以通过像DebuggerDisplayAttribute这样的属性进行自定义,所以我希望DisplayOrder能够存在另一个这样的属性.[DebuggerDisplay("{Name}")] public class Rule {public string Name;public int MaxAge;public DateTime StartDate;public DateTime EndDate; }在理想...

c# – Debug.WriteLine()参数表达式评估副作用是否在发布版本中发生?【代码】

根据this问题接受的答案:When the application is compiled in the release configuration, the Debug elements will not be compiled into the code.Debug.WriteLine()(和类似的)的参数表达式评估副作用是否在发布版本中发生?我不确定“调试元素”究竟意味着什么.解决方法:这很容易尝试自己:class Program {static void Main(string[] args) {int i = 0;Debug.WriteLine(i++);Console.WriteLine(i);Console.ReadLine();} }在调...

c# – 停止visual studio debug将斜杠放在包含双引号的字符串中

昨天我在Visual Studio 2015中遇到了这种奇怪的行为,我正在制作一个以双引号开头和结尾的字符串.在单步执行代码时,我在结果上盘旋,看到内容,字符串中有反斜杠 – 什么! (见下图).简而言之,我发现变量的调试视图正在显示转义的反斜杠 – 我认为这是误导性的. 有没有人知道是否有办法在Visual Studio中禁用它,以便它只显示值为“”bob *“”或没有指示字符串类型“bob *”?附:是的我知道,在注意到这种行为之前,多年来使用VS似乎有...

DebuggerStepThrough特性(c#)【代码】

单步调试程序时,有一些属性和方法不想进入,可以使用DebuggerStepThrough特性 (1)属性 private string word;public string Word{[System.Diagnostics.DebuggerStepThrough]get { return word; }[System.Diagnostics.DebuggerStepThrough]set { word = value; }} (2)方法 [System.Diagnostics.DebuggerStepThrough]public void Test(){Debug.WriteLine("Test");}调试的时候不会进入Test方法 一些其他的特性:C...

c# – 为什么在编译时将dll文件复制到我项目的Bin / Debug文件夹中,尽管没有引用任何这些库?

我很困惑为什么Visual Studio创建/复制大量的库dll到我的项目的bin / Debug文件夹中虽然我没有引用任何这些库? dll表示在上述项目所在的同一解决方案的其他项目中使用的库,但我不明白为什么一个给定项目中的未引用库仍然复制到bin / …文件夹中.我使用NuGet,但我确保解决方案范围内的NuGet管理器仅包含随选择库提供的特定项目.解决方法:如果项目A引用项目B而项目B引用dll C,则项目A很可能在没有dll C的情况下不起作用(如果间接使用...

c# – DebuggerDisplayAttribute – 在评估表达式时如何选择语言?【代码】

http://msdn.microsoft.com/en-us/library/x810d419.aspx 从我们在MSDN上看到的情况来看,它表示在我们将语言更改为语言时要小心.我的问题是:编写这些表达式的支持语言是什么?如果各种语言可以做到,它如何检测正在使用哪种语言? 我已经在CLI中创建了我的类,并用c#编写了表达式,因为它有效.我在c / CLI中尝试过,但事实并非如此. 这是我的代码:[DebuggerDisplay("z = {ToString()} Norm = {System.Math.Round(Norm,2)} Angle = {S...

【C#】Visual Studio 2017 一边Debug,一边修改代码【图】

好久没写C#了,最近在学习著名科学上网工具 shadowsocks-windows 的源代码,想着可以边断点调试,边加上一些注释以方便理解,stackoverflow 和 msdn 随便翻了一下,竟发现了Debug新世界。 一. 原始需求 原始需求是这样,本来我只是希望在断点调试项目的时候,可以增加一些注释,以方便理解。 但是遇到一个问题:在处于断点模式(Break Mode,即程序当前命中了断点,并在断点处阻塞着不能向下执行)时,是可以随意增加注释的: 当不...

Effective java / SQL / C# / Debugging / python

《Effective Java中文版(原书第3版)》Java之父James Gosling鼎力推荐Jolt获奖作品全新升级大量完整的示例代码和透彻的技术分析Java程序员的经典参考书针对Java 7、8、9充分展示新的Java编程语言及其类库特性,包括在其面向对象根部添加的函数编程构造PC版:http://product.china-pub.com/8054944移动版:http://m.china-pub.com/touch/touchproduct.aspx?id=8054944 《Effective SQL:编写高质量SQL语句的61个有效方法》三位世界...