草庐IT

Write-Debug

全部标签

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# - 调用 Stream.Write 和使用 StreamWriter 有什么区别?

实例化一个Stream对象,比如MemoryStream和调用memoryStream.Write()方法来写入有什么区别流,并使用流实例化一个StreamWriter对象并调用streamWriter.Write()?考虑以下场景:你有一个方法接受一个Stream,写入一个值,然后返回它。稍后会读取流,因此必须重置位置。有两种可能的方法(似乎都有效)。//InstantiateaMemoryStreamsomewhere//-PassedtothefollowingtwomethodsMemoryStreammemoryStream=newMemoryStream();//Notus

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# - .NET/C# 调试 : How to debug a classical heisenbug?

最近,我遇到了一个经典的Heisenbug.情况是这样的:我在一个面板中有一个树列表,即主视图,在右侧的另一个面板中有一个详细View,显示有关当前选定树节点的信息。(与Windows资源管理器非常相似。)当我向树中添加一个新节点时(想想在Windows资源管理器中右键单击一个文件夹并说“新建->文件夹”),新创建的节点被选中。问题是:右侧的详细View应该更新以显示新节点。然而,事实并非如此。我必须切换到另一个树节点一次,然后才能在详细View中看到有关新节点的信息。该错误很容易重现,并且在“发布”和“调试”构建配置中都会发生。但是:一旦我在事件处理程序中设置断点(用于“添加新节点”

c# - 在项目中添加一个EXE文件,这样它就会像DLL一样被复制到Bin/Debug文件夹中?

我需要我的C#项目在执行期间启动另一个EXE程序。这个可执行文件需要放在与构建解决方案时放置的C#程序相同的文件夹中,例如,调试文件夹——就像DLL文件引用——这样当我的团队成员从TFScheckout项目时,并且调试,当我的C#代码尝试调用它时,找到了EXE。但是,EXE本身不是引用,因此不能将其添加为引用,即使我希望以与引用相同的方式复制它。这个问题有没有合理的解决方案?提前致谢。 最佳答案 您可以转到文件的属性,并在“复制到输出目录”下选择,copyifnewer 关于c#-在项目

c# - 使 NLog.config 文件从 (d :\dev) instead of "\bin\debug\"

我在特定的DLL中使用Nlog进行日志记录。然后在另一个应用程序中使用该DLL(使用System.Reflection.Assembly.LoadFrom(path+a.dll)动态加载它)。我手动将Nlog.dll和Nlog.config文件放在Path文件夹中,应用程序可以正常执行,但不会记录任何消息。但是,当我继续将Nlog.config文件手动放入应用程序目录(\bin\debug\)时,会记录消息。谁能告诉我如何将Nlog.Config的搜索位置指向不同于\bin\debug\的目录(d:\dev)。 最佳答案 下面是我如

c# - 在 IIS 7 中启动应用程序时出现 "CS0016: Could not write to output file"错误

我运行的是Windows7,并且通常不是此设置中的开发人员,并且最近在C#中构建了一个WCFRest服务,我现在正尝试将其部署到本地计算机上的IIS。经过多次争论之后,我设置了应用程序,但是当我导航到该应用程序时,我收到一条错误消息:编译错误Description:Anerroroccurredduringthecompilationofaresourcerequiredtoservicethisrequest.Pleasereviewthefollowingspecificerrordetailsandmodifyyoursourcecodeappropriately.Compile

c# - 在对象内部以 Debug模式搜索

调试C#应用程序时是否可以在对象内部搜索值和/或其他字段?我正在寻找可以在多个级别下钻对象的深度搜索。我正在寻找的是一种在非常复杂的对象(调试时,例如在“快速监视”窗口中)内部进行搜索(如F3用于文档搜索)的方法。 最佳答案 你可以使用OzCode(VisualStudio的附加组件),它可以让您search对于您想从悬停数据提示或QuickWatch窗口中查看的成员。请参见以下屏幕截图中的示例:全面披露:我是“OzCode”的共同创建者。 关于c#-在对象内部以Debug模式搜索,我们