C# 为什么VS2015在调试模式下使用步进(F10)时跳过行

C# 为什么VS2015在调试模式下使用步进(F10)时跳过行,c#,debugging,xamarin,visual-studio-2015,xamarin.android,C#,Debugging,Xamarin,Visual Studio 2015,Xamarin.android,在使用VisualStudioEmulator for Android时,当我尝试从一行转到另一行时,会跳过一些行 AppDomain.CurrentDomain.UnhandledException += ApplicationUnhandledExceptionHandler; TaskScheduler.UnobservedTaskException += UnobservedTaskExceptionHandler; 在emulator上跳过上述行,但在设备上不跳过。我正在检查这个,因

在使用VisualStudioEmulator for Android时,当我尝试从一行转到另一行时,会跳过一些行

AppDomain.CurrentDomain.UnhandledException += ApplicationUnhandledExceptionHandler;
TaskScheduler.UnobservedTaskException += UnobservedTaskExceptionHandler;
在emulator上跳过上述行,但在设备上不跳过。我正在检查这个,因为emulator上没有调用处理程序。我试图直接设置断点,但没有成功


在调试模式下跳行的原因是什么?

有时Android部署会出现混乱-断点无法触发(它们通常在编辑器栏中显示为开放圆,这表示源代码不匹配),应用程序无法按预期方式运行,等等


当IDE显示与您的设备或模拟器不一致的代码时,我发现强制卸载包然后从IDE重新部署通常可以解决这个问题。使用ADB命令提示符并运行
“ADB uninstall com.company.packagename”
可以最可靠地完成此操作。然后,像往常一样从IDE重新构建和部署/运行应用程序。

有时Android部署会出现混乱-断点无法触发(它们通常在编辑器栏中显示为开放圆圈,表示源不匹配),应用程序无法按预期方式运行,等等


当IDE显示与您的设备或模拟器不一致的代码时,我发现强制卸载包然后从IDE重新部署通常可以解决这个问题。使用ADB命令提示符并运行
“ADB uninstall com.company.packagename”
可以最可靠地完成此操作。之后,只需从IDE中重新构建并部署/运行应用程序,就像平常一样。

我发现,在visual studio 2015中,转到
工具->选项->调试->常规
确保选中了
启用.NET Framework源代码步进


重建之后,您应该可以继续了。

我发现在visual studio 2015中,转到
工具->选项->调试->常规
确保选中了
启用.NET Framework源代码步进


在之后重新生成,您应该可以继续运行。

您确定正在执行的代码与正在调试的代码相同吗?调试设置中有一个设置控制它…显然,属性get/set可以被视为“噪波”并被跳过。您能用System.Diagnostics.Debugger.break()中断吗;语句?是否确定正在执行的代码与正在调试的代码相同?调试设置中有一个设置控制它…显然,属性get/set可以被视为“噪音”并被跳过。是否可以使用System.Diagnostics.Debugger.break()中断;声明?是的,在模拟器中卸载应用程序是解决方案。我不知道它为什么会不同步,因为我已经进行了清理和重建。这似乎偶尔会发生在我身上,但如果我添加/删除包依赖项,或者在调试/发布构建目标之间切换,几乎总是会发生。是的,在模拟器中卸载应用程序是解决方案。我不知道它为什么不同步,因为我已经进行了清理和重建。这似乎偶尔会发生在我身上,但如果我添加/删除包依赖项,或者在调试/发布构建目标之间切换,几乎总是会发生。