我有一个通用应用项目。它包含不同的可移植窗口运行时组件,例如业务层和数据层。现在我有一个非常奇怪的问题。某些方法不可调试。如果我在其中一个上设置断点,当我启动调试器时它将变为白色。当我设置调用方法的断点时,它将跳过调试方法,但会执行代码。 我可以对代码进行更改,它将适用。所有重建,清洁和重启都无济于事。
如果我在调试器选项中激活了我的代码选项,它会将其保持为红色,将其向下移动一些线条或顶部但不会击中它。
我尝试在不同的PC上删除了obj和bin文件夹,修复了vs安装..
有谁知道我做错了什么? OO
编辑:我注意到,尽管我可以设置不同的断点,但大多数都标记为活动(红球),没有一个被击中。如果这有所不同:它们都在内部类中。感谢 NPadrutt
答案 0 :(得分:0)
我不确定是什么导致了您的问题,但在下面的链接中有一些解决方案。我希望你能找到你的解决方案。 Visual Studio does not allow breakpoints in MVC views
断点不会被击中的一些原因:
可执行文件和代码不匹配。例如,您更改了代码,但在编译时可执行文件正在使用,并且实际上并未更新。 可执行文件在管理模式下运行,但Visual Studio以常规用户身份运行。 断点可以被禁用,但仍然存在。转到断点窗口并确保断点已启用。
当断点为白色时,表示Visual Studio无法将源文件中的位置与正在调试的应用程序匹配。通常情况下会出现以下原因
源和可执行文件已过期。完全重建通常会解决这个问题 无法找到可执行文件的PDB文件。转到调试 - > Windows - >模块并确保正确加载PDB
答案 1 :(得分:0)
我明白了。问题是组件的类型是Windows运行时组件。我想这将被编译为本机代码并进行优化,以便在此之后不能进行调试。 我把它改成了类库,现在很好..