Tag: visual studio debugging

从即时窗口执行方法

当应用程序未运行时,可以在Visual Studio中从即时窗口执行静态方法。 特定 namespace Handyman { public class Program { static void Main(string[] args) { } static string SayHello(string name) { return string.Format(“Hello {0}!”, name); } } } SayHello静态方法可以使用即时窗口执行 ?SayHello(“Miki Kola”) 语法并将消息返回到即时窗口。 我想知道是否可以使用相同的技术在对象上执行方法? 当然,您必须首先创建对象。 特定 namespace Handyman { public class NiceTooMeetYou { public string NiceToMeetYou(string name) { return string.Format(“It is nice to meet you {0}!.”, […]

Linq哪里有本地计数器关闭不同结果VS手表

我尝试使用LinQ Where扩展函数删除array前3个元素。 这是一个例子: var array = new[] { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; var count = 3; var deletedTest1 = 0; var test1 = array.Where(x => ++deletedTest1 > count).ToList(); Console.WriteLine($”{{{String.Join(“, “, test1)}}}”); var deletedTest2 = 0; var test2 = array.Where(x => ++deletedTest2 > count).AsEnumerable(); Console.WriteLine($”{{{String.Join(“, “, test2)}}}”); var deletedTest3 = […]

在Visual Studio中进行调试时,“驱动器中没有磁盘”错误

每当我调试我的程序时,我有时会遇到几个错误,要求我将磁盘插入驱动器E和驱动器F.这似乎与VS有关,寻找最初在这些驱动器上开发的第三方组件的来源,例 如果我一直按取消,那么我的调试会话继续,但它很烦人。 我该如何阻止这种情况发生? 注意,我不是要尝试调试这些库,而是在Options / Debugging下勾选了“ Enable Just my Code ”。

Visual Studio 2013远程调试,自动部署?

当我尝试使用Windowsapp store应用程序(Metro应用程序)进行远程调试时,它非常简单。 在开始下拉菜单中,我可以选择其中一台远程计算机。 然后VS构建了项目并自动将可执行文件部署到远程计算机并运行它。 感觉好像是本地调试。 既然我想尝试使用Windows应用程序(简单的C#Windows Forms)进行远程调试,那就不那么容易了。 我阅读了以下页面: http : //msdn.microsoft.com/en-us/library/vstudio/8x6by8d2(v=vs.110).aspx 这是否意味着我必须在构建项目时每次手动将构建的exe复制到远程计算机? 有没有办法让它像Windowsapp store应用程序一样轻松工作? 可能是第三方扩展或其他什么?

无法连接到配置的开发Web服务器

当我从Visual Studio运行我的Web应用程序时,我收到以下消息: Unable to connect to the configured development web server 然后它拒绝运行。 我该如何解决这个问题?

如何在使用对象初始化程序时正确使用断点?

例如,做这样的事情: foreach (DataRow row in data.Rows) { Person newPerson = new Person() { Id = row.Field(“Id”), Name = row.Field(“Name”), LastName = row.Field(“LastName”), DateOfBirth = row.Field(“DateOfBirth”) }; people.Add(newPerson); } 无法将断点设置为单个分配,断点将设置为整个块。 如果我想具体查看代码中断的地方,我必须使用: foreach (DataRow row in data.Rows) { Person newPerson = new Person(); newPerson.Id = row.Field(“Id”); newPerson.Name = row.Field(“Name”); newPerson.LastName = row.Field(“LastName”); newPerson.DateOfBirth = row.Field(“DateOfBirth”); people.Add(newPerson); } […]

如何在Visual Studio加载项中获取中断/exception的当前行号?

我正在搞乱Visual Studio加载项API,试图看看我想做的事情是否可行。 我现在正在做的一件事是: public void Exec(string commandName, vsCommandExecOption executeOption, ref object varIn, ref object varOut, ref bool handled) { _applicationObject.Events.DebuggerEvents.OnExceptionThrown += DebuggerEvents_OnExceptionThrown; handled = false; if(executeOption == vsCommandExecOption.vsCommandExecOptionDoDefault) { if(commandName == “MyAddin1.Connect.MyAddin1”) { handled = true; return; } } } void DebuggerEvents_OnExceptionThrown(string ExceptionType, string Name, int Code, string Description, ref dbgExceptionAction ExceptionAction) { //how to […]

DLL从VS2010中的模块列表中丢失

我真的一直在撞击这个谚语墙。 我有一个包含C#和C ++代码项目的解决方案。 我经常调用C ++ DLL,它们是在C#中通过P / Invoke在这个项目中编译的。 没问题。 据我所知,通过*.sln文件以及C ++和C#文件的所有必需调试器设置都已正确设置。 注意:我经常能够调试类似的P / Invoked C ++代码而没有任何问题! 当然,我想,也许,符号没有加载 – 但是,在打开模块窗口时,我发现我试图步入的DLL甚至没有列出! 在我的C#程序中运行该函数确实使用了DLL(我得到了正确的输出),但是,在观看模块窗口时,DLL仍然没有出现。 有没有人知道发生了什么? TL;博士 我在调试P / Invoked C ++方面有相当多的经验。 但是,我想调试的DLL甚至没有出现在Modules列表中(所以如果VS调试器似乎完全不知道它的存在,我显然无法进入它)。

使用x86但不是x64的Console.Writeline

我正在测试visual studio 2012中的一个项目。 当我在x86中运行我的代码时, Console.Writeline出现在输出窗口中。 但是,当我在x64中运行它时,它没有。 我知道我可以使用System.Diagnostics.Debug ,但我真的很想理解为什么Console.Writeline不工作,或者某个地方有设置。 谢谢。 编辑:观察:两个版本都禁用Visual Studio托管过程。 当我启用它时,所有Console.Writeline消息都显示为x64和x86。 当我再次禁用它时,只有x86显示Console.Writeline 。

如何在Intellitrace事件中跟踪异步数据库操作?

我试图看到我的应用程序使用EntityFramework做的一些查询。 在我的方法中,我没有异步,我可以正常查看查询: public List GetTools() { return EntityContext.ToList(); } 但如果它喜欢: public Task<List> GetTools(int quantity) { return EntityContext.Take(quantity).ToListAsync(); } 是否可以在IntelliTrace事件中获取异步方法的查询? 谢谢。