Asp.net mvc Visual Studio不允许在MVC视图中使用断点
有时VisualStudio不允许我在MVC视图中设置断点。这种情况在我身上已经发生了很多次,但并不是每一次都会发生,我也不知道为什么 单击左侧栏放置断点时,会放置一个白色圆圈,而不是正常的红色圆圈。当您将鼠标悬停在它上面时,它会显示“断点当前不会被命中。源代码与原始版本不同。”它会继续描述如何允许断点被命中,但这会产生奇怪的结果,我不希望这样 如果错误是正确的,那么我想运行原始源代码。我不知道在VS的幕后发生了什么;我试着重建和所有这些,但没有帮助。我在VS 2012中以调试模式运行Asp.net mvc Visual Studio不允许在MVC视图中使用断点,asp.net-mvc,visual-studio,debugging,visual-studio-2012,breakpoints,Asp.net Mvc,Visual Studio,Debugging,Visual Studio 2012,Breakpoints,有时VisualStudio不允许我在MVC视图中设置断点。这种情况在我身上已经发生了很多次,但并不是每一次都会发生,我也不知道为什么 单击左侧栏放置断点时,会放置一个白色圆圈,而不是正常的红色圆圈。当您将鼠标悬停在它上面时,它会显示“断点当前不会被命中。源代码与原始版本不同。”它会继续描述如何允许断点被命中,但这会产生奇怪的结果,我不希望这样 如果错误是正确的,那么我想运行原始源代码。我不知道在VS的幕后发生了什么;我试着重建和所有这些,但没有帮助。我在VS 2012中以调试模式运行 这可能是
这可能是由许多因素造成的,但我最近帮助过人们的一些项目需要检查:
- 第一步:DLL旁边必须有一个PDB文件才能启用调试。(请参阅:)确保PDB位于执行目录中
- 清除以从bin文件夹中删除所有旧DLL
- 确保应用程序正在运行当前代码的生成(与Visual Studio中的版本相同)。不要以为这仅仅是因为您单击了“构建”或“部署”。如果没有检测到任何变化,那么事情通常不会发生。检查程序集的生成时间,或更改某些内容并重新生成以查看文件大小的更改
- 如果您正在运行与web相关的内容,请确保浏览器没有缓存代码,或者IIS没有长时间运行进程
- 杀死任何正在运行的Visual Studio Development Server实例(您可以从任务管理器中执行此操作,或者更简单地从系统托盘中执行此操作-它们看起来像一个IE徽标,当您将鼠标悬停在它们上方时,它们会告诉您它们在哪个端口上运行)
- 在命令提示符下使用
重新启动IISiisreset
- 检查Visual Studio中的调试设置(
)以自动加载符号,如果要链接其他程序集,则需要在此处引用其PDB文件Tools>Options>debug>Symbols
进入视图后,点击F5(继续)将进入视图中的断点。确保将解决方案配置设置为“非发布时调试”
谢谢你的回答,在javascript代码中设置断点对我来说没有任何效果。 我将javascript代码移到文件Scripts\myscript.js中,并将脚本块替换为
<script src="@Url.Content("~/Scripts/myscript.js")"></script>
所以今天早上我遇到了这个问题,我的修复程序与razor语法有关 我在if语句中设置了一个变量
@If (my condition)
{
myVar1 = "blah blah blah"
@myVar2 = 1 <== This line here was causing my razor to crap out on render
}
@If(我的状况)
{
myVar1=“诸如此类”
@myVar2=1要添加到@kirk broadhurst answer中(如果可能,请修改),请仔细检查您的web.config,特别是system.web下的编译
标志。即使您是为调试而构建,如果调试
属性设置为false,您也会遇到问题
<system.web>
<compilation debug="true" targetFramework="4.6" />
</system.web>
确保“调试”设置好了,瞧…调试又开始工作了:-)您是否在运行发行版,并且没有将其配置为生成pdb文件?您完全可以,这里还有其他因素阻止了它。但是有很多变量可能会导致这种情况。我正在运行调试。我的que中是否应该包含其他相关信息stion?没有太多可以添加的。正如我所说,可能有太多的变量在起作用。可能是从另一个项目输出目录复制dll,可能是它没有生成pdb,可能是它指向的文件超出了您的预期,等等。当这个问题是针对VS2012时,我现在在VS2015上查看我的通信下面的ent re:web.config修改要检查的内容列表