You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

在Visual Studio 2019中创建ASP.NET Core MVC控制器遇deps.json缺失错误

解决ASP.NET Core MVC创建控制器时deps.json缺失的问题

嘿,我之前在VS2019里开发ASP.NET Core MVC的时候也碰到过一模一样的坑,给你几个亲测有效的解决步骤,应该能帮你搞定:

  • 先清理重建解决方案
    这是最基础但往往奇效的一步。右键你的解决方案,先选清理解决方案,等清理完成后再选生成解决方案。很多时候是编译缓存搞的鬼,清理后重新生成会自动补全包括deps.json在内的所有依赖文件。

  • 检查SDK版本是否匹配
    右键项目→属性→应用程序,看看目标框架是哪个版本(比如netcoreapp3.1或者net5.0),然后打开VS安装器,确认对应的.NET Core SDK已经安装。版本不兼容的话,依赖文件经常会生成失败。

  • 手动用命令生成deps.json
    打开VS顶部的工具→命令行→开发者命令提示符,cd到你的项目根目录(就是存放.csproj文件的文件夹),然后运行:

    dotnet publish --configuration Debug
    

    执行完这个命令后,去bin/Debug/netX.X/publish目录下看看,deps.json应该就生成了,之后再回到VS里尝试创建控制器。

  • 检查.csproj文件的配置
    有时候项目文件被误改会导致依赖配置出问题。你可以新建一个干净的ASP.NET Core MVC项目,对比它的.csproj内容,看看你的项目里有没有缺失关键节点,比如<TargetFramework><PreserveCompilationContext>这些,确保配置都正确。

  • 重置VS的缓存文件
    VS自身的缓存抽风也会引发这类奇怪的错误。先关掉VS,然后删除这两个目录的内容:

    • %LOCALAPPDATA%\Microsoft\VisualStudio\16.0_*\ComponentModelCache(把*换成你VS对应的版本号)
    • %USERPROFILE%\.nuget\packages(可以先备份一下,删完后重启VS,右键项目选还原NuGet包
  • 试试新建测试项目
    如果上面的方法都不管用,建议新建一个空白的ASP.NET Core MVC项目,试试在里面创建控制器。如果新项目没问题,那基本就是你当前项目的文件或者配置损坏了,只能慢慢把代码迁移到新项目里了。

内容的提问来源于stack exchange,提问作者Akshay Patil

火山引擎 最新活动