【问题标题】:ASP.Net intellisense incorrectly suggesting webroot for pathsASP.Net 智能感知错误地建议路径的 webroot
【发布时间】:2015-12-09 22:53:17
【问题描述】:

按照 Pluralsight 课程,我正在从头开始编写一个 ASP.NET 5/MVC 6 Web 应用程序。当以如下格式引用对象时:

~/js/site.js

~/css/site.css

在 .cshtml 文件中,Intellisense 显示错误,提示找不到文件,提示路径应改为:

~/wwwroot/js/site.js
~/wwwroot/css/site.css

但是使用第一组路径在实际网页上正确引用文件,但使用第二组路径,正如 Visual Studio 建议的那样会破坏网页并且两者js和css没有加载。

这些项目位于 wwwroot 文件夹下,您可以在此处看到:

为什么 Intellisense 会出现这种行为,我该如何解决这种行为?

编辑:这是 project.json 文件:

{
  "version": "1.0.0-*",
  "compilationOptions": {
    "emitEntryPoint": true
  },

    "dependencies": {
        "Microsoft.AspNet.IISPlatformHandler": "1.0.0-rc1-final",
        "Microsoft.AspNet.Mvc": "6.0.0-rc1-final",
        "Microsoft.AspNet.Server.Kestrel": "1.0.0-rc1-final",
        "Microsoft.AspNet.StaticFiles": "1.0.0-rc1-final",
        "Microsoft.AspNet.Mvc.TagHelpers": "6.0.0-rc1-final"
    },

  "commands": {
    "web": "Microsoft.AspNet.Server.Kestrel"
  },

  "frameworks": {
    "dnx451": { },
    "dnxcore50": { }
  },

  "exclude": [
    "wwwroot",
    "node_modules"
  ],
  "publishExclude": [
    "**.user",
    "**.vspscc"
  ]
}

【问题讨论】:

  • 您运行的是 MVC6 的最新版本(即 RC1)吗?
  • 6.0.0-rc1-final。包含 project.json 以便可以查看依赖项的版本。

标签: c# asp.net asp.net-mvc razor asp.net-core-mvc


【解决方案1】:

为了让您的智能感知正确地引用 wwwroot 下的文件,您的 project.json 文件需要具有以下内容:

"webroot": "wwwroot",

这应该可以解决您的问题。当您在 Visual Studio 2015 中使用脚手架创建新的 MVC 项目时,这个小问题是 MS 的一个已知错误。我认为它已通过 6.0.0-rc 1-final 解决。

【讨论】:

    猜你喜欢
    • 2011-08-07
    • 2017-06-14
    • 1970-01-01
    • 2022-01-09
    • 2022-07-04
    • 1970-01-01
    • 1970-01-01
    • 2014-02-12
    相关资源
    最近更新 更多