草庐IT

manual_adv_debug_console

全部标签

c# - vstest.console.exe 未发现 xunit 测试

我正在整理一组新的单元测试,以作为CI作业一起运行。我使用vstest.console.exe而不是mstest.exe主要是因为它能够从多个框架运行测试,但现在的重点是一些xUnitdll。这些作业作为Jenkins管道的一部分运行。我已经在几个开发箱上成功地测试了所有内容,但令人恼火的是,到目前为止,测试发现在任何CI构建箱上都不起作用。这是在添加0.99.8xUnit测试适配器vsix(也使用0.99.7测试)之后。xUnitdll是针对4.5使用xUnit的2.0.0.2378betanuget版本构建的。我已经用尽可能简单的dll重现了这些症状,使用了一个公共(public)

c# - 如何让 ToString() 出现在 Debug 中

我想让ToString()在Debug模式下为我控制的类显示。如果这是当您将鼠标悬停在变量上时首先显示的内容,那就太好了。这个有属性吗? 最佳答案 标记你的类(class)[System.Diagnostics.DebuggerDisplay("{ToString()}")]测试:[System.Diagnostics.DebuggerDisplay("{ToString()}")]classMyClass{privatestring_foo="Thisisthetextthatwillbedisplayedatdebugging"

C# 比 Console.Write() 更快的东西?

我正在制作游戏,使用Console.Write()重绘游戏区域不是很好,有什么方法可以更快地重写整个游戏区域,而不会使它看起来“滞后”?游戏场中几乎所有的东西都在移动,但只有在元素不为0时才会有对象。(您可以在此处查看完整代码http://pastebin.com/TkPd37xD如果我的描述不够,请查看我在说什么)for(intY=0;Y 最佳答案 基本上有两种方法:渲染更少,渲染更快。渲染较少通常更棘手,但也往往不那么密集。典型的例子是Carmack的Keen游戏——PC没有勇气一次重新渲染整个屏幕,所以Carmack确保只有屏

c# - 从 Console.In 读取二进制数据

有没有办法在C#中从标准输入读取二进制数据?在我的问题中,我有一个程序启动并接收标准输入上的二进制数据。基本上:C:>myImageReader我想写一个这样的程序:staticclassProgram{staticvoidMain(){Imageimg=newBitmap(Console.In);ShowImage(img);}}但是Console.In不是Stream,它是TextReader。(如果我尝试读取char[],TextReader会解释数据,不允许我访问原始字节。)有人知道如何访问实际的二进制输入吗?干杯,雷夫 最佳答案

c# - 如何确定 Console.Out 是否已重定向到文件?

如果我的程序正在打印到控制台,我会根据Console.WindowWidth通过插入换行符以某种方式执行自动换行-这非常有效。但是,如果程序的输出被重定向到一个文件或另一个程序,我希望它跳过自动换行。我如何才能检测到这种情况?Console.WindowWidth在两种情况下返回相同的数字。奖励如果解决方案可以区分重定向的Console.Out和重定向的Console.Error。 最佳答案 .NET4.5添加了Console.IsOutputRedirected和Console.IsErrorRedirected。

c# - 如何在 C# 中全局定义常量(如 DEBUG)

我想根据#define定义的常量以不同方式编译项目,如下所示:#defineUSE_COMPONENT_X#ifUSE_COMPONENT_X...#endif我可以在C#中做到这一点。但是当我转到同一个项目中的另一个文件时,这个常量没有定义。我能否以某种方式为所有项目定义一个常量,例如DEBUG是这样定义的? 最佳答案 您可以添加/define编译器开关。打开项目的属性页对话框。单击配置属性文件夹。单击构建属性页。修改条件编译常量属性。 关于c#-如何在C#中全局定义常量(如DEBUG

c# - 我们在哪里使用 Debug/Trace 语句

我使用C#(使用VSIDE)进行开发。我对调试/跟踪语句感到困惑。我们在哪里以及为什么使用这些语句?我经常在其他开发人员的源代码中看到这些。谁能指点一下? 最佳答案 Debug语句仅出现在Debug版本中。Trace语句存在于调试和发布版本中。为了调试或检查,您可以将Debug和Trace语句放在要输出某些值的地方。这篇MS支持文章可能会引起您的兴趣:HowtotraceanddebuginVisualC#TheTraceclassroutesmessagestolisteners:classesthataredesignedtoa

c# - Visual Studio Express 2013 : Program output in unit tests (console, 调试等)

我真的要用头撞墙了。在VisualStudio(Express2013)中获取程序输出有那么难吗?在编写代码时,我发现在工作和故障排除时能够打印出变量、操作等的值是绝对必要的。在Java和Eclipse中,System.out.println()始终有效,打印到IDE控制台。在编写C程序时,我总是使用控制台,因此回显任何内容都没有问题。但是,在VSExpress2013中,我似乎无法获得任何输出。问题是否与我正在编写单元测试而不是“正常”可执行程序有关?如果是这样,有没有办法让VS在单元测试类中显示程序输出?我试过使用调试,但也没有显示任何内容。认为存在配置问题,我一直在寻找调试未显示

c# - 将 console.writeline 从 Windows 应用程序重定向到字符串

我有一个用C#编写的外部dll,我从程序集文档中了解到它使用Console.WriteLine将其调试消息写入控制台。这个DLL在我与应用程序的UI交互期间写入控制台,所以我不直接进行DLL调用,但我会捕获所有控制台输出,所以我想我必须在表单加载中初始化,然后得到它稍后捕获文本。我想将所有输出重定向到一个字符串变量。我试过Console.SetOut,但它重定向到字符串的使用并不容易。 最佳答案 因为您似乎想实时捕获控制台输出,所以我发现您可以创建自己的TextWriter实现,只要Write或WriteLine发生在Console

c# - vscode : how to setup debugging mono/c#?

我正在尝试设置VisualStudioCode(https://code.visualstudio.com/docs/debugging)以在win8上调试c#/mono。我还安装了最新版本的单声道。我向launch.json添加了一个配置并将“类型”更改为单声道(也尝试将“程序”指向调试exe)但我只是收到错误:初始化:无法为适配器ID“mono”创建调试session如何在C#项目上设置调试?编辑:似乎需要gulp脚本?CompilingC#projectswithVSCodeonUbuntu 最佳答案 VisualStudio