【问题标题】:Visual Studio 2017 cshtml file errorsVisual Studio 2017 cshtml 文件错误
【发布时间】:2017-07-31 01:14:32
【问题描述】:

我在新的 VS2017 中打开了我现有的 VS2015 解决方案。希望它能够正常工作,但是,我在诸如 @model、@ViewBag、@ActionLink、@Url、@Partial、@Scripts、@Styles 之类的词下以及 where 子句中的 lambda 表达式下看到了很多红线在页面的模型上。

不确定缺少什么或错误。解决方案已构建,但在 cshtml 文件中显示错误。

任何人的帮助或指导都会有所帮助。

提前致谢。 肯

【问题讨论】:

  • 您是否尝试过多次重新打开文件,或者重新启动编辑器?我在 2015 年一直发生这种情况,但 2017 年还没有机会尝试。
  • 你能分享更多关于这些项目类型的详细信息吗?
  • 我的解决方案包含一个针对 .NET 框架 4.5.2 的 MVC 项目。我知道过去 Razor 文件缺少引用等存在问题。只是想知道是否其他人也有同样的问题。
  • 我发现了这个问题。我在 ASP.NET MVC 4 上,需要迁移到 ASP.NET MVC 5,然后一切正常。这是我关注的链接...docs.microsoft.com/en-us/aspnet/mvc/overview/releases/…

标签: c# razor visual-studio-2017


【解决方案1】:

我遇到了这个问题,https://stackoverflow.com/a/19696998/4484478 为我解决了这个问题。 我的解决方案是用 VS2012 创建的。在 RTM 出来之后,我开始使用 VS2013 和 VS2015 来解决这个解决方案,并且在我开始使用 VS2017 之后发生了 OP 描述的问题。

来自回复帖:

创建一个针对相同 .NET 框架的新项目,并将其 Views/web.config 文件复制到当前项目中的顶部。

请注意,此处的 web.config 是 Views 文件夹中的一个,而不是主要的。这可能是最简单的修复方法。但是,如果您在此文件中有一些其他自定义项,您可以尝试手动编辑 Razor 和 MVC 的版本号。我的 Razor 从 2.0.0.0 -> 3.0.0.0 更改

还有 4.0.0.0 -> MVC 的 5.2.3.0

【讨论】:

  • 请将您的图像转换为格式化的代码块。确切地看到您正在更改的内容是不同的,因为其中一些被切断了,并且无法复制/粘贴任何内容。
  • 还必须更新视图文件夹中的 web.config 以引用我网站的命名空间。创建一个新项目和更改命名空间引用最终都修复了它。
【解决方案2】:

在我的情况下,它原来是解决方案 (.sln) 文件中的一个版本。

在顶部,我将我的版本替换为以下内容:

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 15
VisualStudioVersion = 15.0.26403.0
MinimumVisualStudioVersion = 10.0.40219.1

解决此问题的最佳方法是在您选择的 VS 中创建一个新解决方案,然后比较 .sln 文件,并从工作文件中复制版本部分。

【讨论】:

    【解决方案3】:

    对于出现错误的项目,请验证 .csproj 文件的第一行是 <Project Sdk="Microsoft.NET.Sdk.Web">,因为这会导致我的 View 相关文件出错。在更改之前,该行显示为<Project Sdk="Microsoft.NET.Sdk">

    【讨论】:

      猜你喜欢
      • 2018-11-16
      • 1970-01-01
      • 2019-02-13
      • 1970-01-01
      • 2022-06-13
      • 2017-08-04
      • 2017-08-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多