【问题标题】:This is not a valid location for a breakpoint这不是断点的有效位置
【发布时间】:2012-12-20 08:03:53
【问题描述】:

我试图在 Visual Studio 2010 中我的 ASP.Net MVC 2 应用程序的 .ascx 或 .aspx 文件中的下面提到的页面上放置一个断点。但它不会让我这样做,它显示:

“这不是一个有效的断点位置”

之前它确实有效。这是为什么?任何帮助表示赞赏。

我的 .ascx 页面如下所示:

编辑 1

.cs 文件可以正常工作。不能仅在 .aspx 和 .ascx 文件上工作

编辑 2

下面提到的评论部分链接中没有一个为该问题提供解决方案。因为我们不能仅为代码库添加额外代码以进行调试。所以有什么方法可以解决这个问题为我的视图的 c# 代码激活红色标记(调试标记),如图片中提到的?

编辑 3

它适用于同一文件上的 javascript 标记,但不适用于 c# 代码。任何线索?

编辑 4

我安装Windows Azure SDK for .NET - October 2012后出现上述问题

当我编译代码时,它会给出 Waring 消息,如下所示。

【问题讨论】:

  • 您是否尝试过保存、关闭和重新启动 Visual Studio?
  • @SList 是的,我做了一切,编译,关闭和重新启动。没有运气
  • @Aschratt 以上链接都没有为问题提供解决方案。因为我们不能为代码库添加额外代码,仅用于调试。所以有什么方法可以激活红色标记(调试标记)用于我的视图的 c# 代码,如图像上提到的?
  • 您打开了正确的文件吗?尝试查看选项卡上的文件名。请确定,那是您的文件,而不是从 vs. 临时生成的文件。

标签: .net visual-studio-2010 asp.net-mvc-2


【解决方案1】:

如果您在 Visual Studio 2012 中使用 Asp.Net Mvc 5,但未安装正确的工具,则会出现此问题。对我来说,这是因为我通过 Nuget 将我的 Asp.Net Mvc 4 版本升级到了版本 5。但是,这并没有在 VS 2012 中安装工具,因此 IDE 可以正确解析和处理 .cshtml 文件。因此,没有任何 razor 代码显示为有效的 C#,并且无法设置任何断点(如果您尝试设置它,则会出现错误“这不是断点的有效位置”)。

解决办法是install the proper tooling。 (或direct link)一旦我安装了工具并重新启动VS,我就可以愉快地再次在.cshtml文件中设置断点。

【讨论】:

  • +1。 Visual Studio 也没有显示颜色突出显示,并且安装工具修复了两者。
  • 谢谢,这解决了我在 VS2012 中尝试向 Razor 视图添加断点时遇到的相同问题。
【解决方案2】:

查看屏幕截图中<% %> 代码块的内容表明语法未突出显示。通常这意味着 VS 没有识别出该块包含服务器端 C# 代码。

它适用于 Javascript,因为 VS 可以将其识别为客户端脚本并对其进行中断。

修复语法高亮,你也可以打破它。

发生这种情况通常是因为 VS 在 HTML 编辑(具有某种视觉预览)和 C# 代码之间切换时遇到了困难,并且偶尔会出错。

最常见的原因是 .aspx 或 .ascx 文件顶部缺少 Language 指令:

<%@ Page Language="C#" ...

或者

<%@ Control Language="C#" ...

您也可以尝试显式代码块,例如:

<script type="text/C#" runat="server"> ...

这也可能是由nested .master pages 引起的:尝试清除 ReflectedSchemas 文件夹:%appdata%\Microsoft\VisualStudio\10.0\ReflectedSchemas\

Removing the ReSharper trial has also been known to cause this.

最后,有时这只是 VS 的一部分 - 尝试重新启动,如果这不起作用,请尝试重新组织文件并再次重新启动。愚蠢(我知道)但有时这会促使 VS 弄清楚。

顺便说一句,这是他们在 VS 2012 中显着改进的地方

【讨论】:

  • +1 为您的鹰眼。在显示语法突出显示问题后,我从上到下浏览了我的文件,反之亦然。然后我找到了问题。我会更新它。感谢您的指导。
  • 重启解决了我的问题。
【解决方案3】:

@Keith 显示语法突出显示问题之后,我从上到下浏览了我的文件,反之亦然。然后我发现了问题。

正如我在上面的 EDIT 4 中显示的那样,我的项目中有一条警告消息。

在我解决了这个问题后,刹车点(调试)问题也消失了。

为此,我使用了下面提到的链接。

Could not load file or assembly 'msshrtmi' - incorrect format in Azure deployment

以后我会写一个完整的分步指南来展示如何摆脱这个问题。

感谢每一位给予我支持的人。

【讨论】:

    【解决方案4】:

    这是 Visual Studio 2013 中的 a bug。它应该在 update 2(或更高版本)中修复。
    也就是说,更新只是暂时解决了我自己的问题。

    【讨论】:

      猜你喜欢
      • 2011-03-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多