草庐IT

高精度AD调试

全部标签

c# - 调试器可视化工具和 "Type is not marked as serializable"

我正在尝试创建一个调试器可视化工具,它会显示任何Control的控件层次结构。它已完成,但我收到异常“类型未标记为可序列化”。我该如何克服呢?控件是.NETWindows窗体框架类型,我无法将其标记为可序列化。 最佳答案 您还需要实现VisualizerObjectSource执行自定义序列化。例子:publicclassControlVisualizerObjectSource:VisualizerObjectSource{publicoverridevoidGetData(objecttarget,StreamoutgoingD

c# - Visual Studio 2012 如何调试 "Unable to add reference to project x"错误?

在VisualStudio2012的空白新类库中,我试图在解决方案中添加对现有项目的引用,还有一个类库MonoGame.Framework.Windows8(https://github.com/mono/MonoGame),但出现错误:UnabletoaddreferencetoProjectMonoGame.Framework.Windows8我已经成功构建了现有的库MonoGame,并将其作为新库的依赖项。可能是什么问题?(非常烦人的错误信息没有给出原因!) 最佳答案 尝试添加内置的dll有一个引用给出了一个更明确的错误消息,

c# - 启动我的调试 MVC3 应用程序会在浏览器中打开一个特定的 .cshtml 文件

在VisualStudio中,当我在这个特定的MVC3项目中按F5时,它会打开:localhost:36185/Views/Auction/Details.cshtml在任何其他项目中,当我按F5时,它会正确打开Home/Index操作方法:http://localhost:36185为什么这会打开一个特定的View而不是使用正确的Home/Index操作?什么设置在干扰? 最佳答案 项目属性=>Web=>开始操作然后选择你的 关于c#-启动我的调试MVC3应用程序会在浏览器中打开一个特

c# - 调试时如何获取返回值?

我查看了SO但找不到答案,但我确定它就在那里......?调试时,如果在return语句上打断点,如何获取返回值?我喜欢浓缩成一行,这样看起来就“漂亮”了。但我目前没有,因为我不知道如何调试返回的结果...?using(IUnitOfWorkcontext=newEFUnitOfWork()){varrepo=newReportRepository(context);returnrepo.GetProcedureReport(startDate,endDate).ToList();//returnresult.ToList();} 最佳答案

c# - 添加 IIS UrlRewrite 似乎会破坏本地 IIS 服务器上的调试

这个问题让我抓狂:我正在处理一个最近创建的项目,突然间我无法调试该特定项目。我正在使用带有IISUrlRewrite2模块的本地IIS7.5。我的开发机器是装有VisualStudio2010Professional的Windows7x64。在其他项目中调试仍然有效。我在本地IIS中设置了一个条目,然后开始在我的本地IIS上调试我的ASP.net4.0项目。我能够使用URLRewrite2模块将调试问题追溯到意外行为,并使用新创建的4.0Web应用程序项目重现该问题:在IIS中使用管理设计器添加一个简单的URL重写规则后,我无法开始调试,因为我收到了错误消息Unabletostartd

c# - 部分类调试

我已经为我的xsd自动生成的类创建了一个分部类。问题在于调试这个部分类。无法识别断点或编译器不会在分部类中设置的断点处中断。//Autogeneratedclassbyxsd.exepublicpartialclassClass1{privateClass1Brand[]brandField;privatestringClass1guidField;.....}//DebugPart-probablyinadifferentfilepublicpartialclassClass1{publicstaticValiditysetValidity(Validityvalidity){//*

c# - 二进制文件不是用调试信息构建的

我正在使用VisualStudio2013、.NetFramework4.0和C#。我正在尝试调试项目中的文件。我在项目属性中将项目设置为调试构建,未选中“优化”。然而,每当我尝试调试这个项目时,它都无法加载符号。所以我去模块窗口加载符号,dll的“优化”列设置为"is",“用户代码”列设置为“否”,消息“二进制文件不是用调试信息构建的”在“符号状态”列中。我已经多次清理和重建、重置iis并手动清理临时asp.net文件,但无济于事。有人知道怎么解决吗? 最佳答案 如果您的项目已经处于Debug模式。请在项目的Build选项卡中检查

c# - log4net 不记录调试语句

我是第一次使用log4net并使用提供的配置示例遵循文档,但是调试语句不记录。信息、错误、警告和致命级别都正确记录。谁能告诉我我错过了什么?应用程序配置:有些人提到检查AssemblyInfofor[assembly:log4net.Config.XmlConfigurator()],但是有或没有这一行没有区别。记录器声明如下:privatestaticreadonlyILoglog=LogManager.GetLogger(typeof(CWD_Netsuite));访问方式如下:XmlConfigurator.Configure();log.Debug("Debugging");/

c# - 调试在 NUnit 下运行的测试

我有一个.NET4.0C#解决方案,其中包含一个在NUnit下运行单元测试的测试项目。NUnit二进制文件是v3.5。我可以很好地运行测试,但我无法在VisualStudio中设置断点和单步执行。我猜这是由.NET版本不匹配引起的。有没有办法使用NUnitforv3.5单步执行v4.0测试程序集? 最佳答案 问题是,除非您另有说明,否则NUnit会在确定有必要时生成一个子进程来运行测试。如果你在Process Explorer观看,您可以看到“nunit-console.exe”*生成了“nunit-agent.exe”*。Visu

c# - 调试的最佳实践

我最近使用VisualStudio和WinDbg对托管应用程序进行了大量调试,因此我经常被要求协助同事进行调试。有好几次,我发现人们只是在各处插入断点并希望得到最好的结果。根据我的经验,这很少是有用的技术。我的方法是这样的。重现问题。理想情况下尽可能减少输入。检查出了什么问题,并列出错误可能出在哪里的理论。通过调试代码的特定区域,一次检查一种理论。必要时重复步骤。对于复杂的调试问题,我经常与同事合作。对于WinDbg,这尤其有用。还有其他有用的调试技巧或最佳实践吗? 最佳答案 如果我可以给每个人关于调试的一个提示,那就是再次破坏它。