ASP.Net intellisense 错误地建议路径为 webroot

ASP.Net intellisense incorrectly suggesting webroot for paths

在完成 Pluralsight 课程后,我正在从头开始编写 ASP.NET 5/MVC 6 网络应用程序。以如下格式引用对象时:

~/js/site.js

~/css/site.css

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

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

然而使用第一组路径在实际网页上正确引用文件,但使用第二组路径,如Visual Studio suggests 破坏了网页并且 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"
  ]
}

为了让您的 intellisense 无误地引用 wwwroot 下的文件,您的 project.json 文件需要包含以下内容:

"webroot": "wwwroot",

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