无法生成 deps.json 以启用迁移
Posted
技术标签:
【中文标题】无法生成 deps.json 以启用迁移【英文标题】:Unable to generate deps.json to enable migrations 【发布时间】:2018-05-02 19:39:24 【问题描述】:我使用 Asp.net core mvc 进行 Web 开发。 我想通过 Entity Framework Core .NET 命令行工具启用实体框架迁移:
dotnet ef migrations add InitialDatabase
但发生错误: 无法生成deps.json,可能已经生成:C:\Program Files\dotnet\sdk\2.0.2\Sdks\Microsoft.NET.Sdk\build\GenerateDeps\GenerateDeps.proj
是否有任何我错过的 .NET Core 配置?
【问题讨论】:
先尝试运行dotnet restore
。
【参考方案1】:
当我将服务引用添加到 regular.net 核心 Web 应用程序时,我得到了类似的错误。
错误:无法生成deps.json,可能已经 生成。您可以在工具名称前指定“-d”选项 诊断输出(例如,“dotnet -d”:C:\Program Files\dotnet\sdk\2.1.502\Sdks\Microsoft.NET.Sdk\targets\GenerateDeps\GenerateDeps.proj
经过调查我才知道,不知何故 svcutil 没有安装。一旦我使用 Nuget 包管理器 (Install-Package dotnet-svcutil
) 安装了 svcutil,这个问题就解决了。
【讨论】:
【参考方案2】:你需要安装:
Windows Communication Foundation (WCF) dotnet-svcutil 工具是一个 .NET Core CLI 工具,用于从 Web 服务中检索元数据 网络位置或来自 WSDL 文件,并生成 WCF 类 包含访问 Web 服务的客户端代理方法 操作。
> Install-Package dotnet-svcutil -Version 1.0.4
【讨论】:
【参考方案3】:我的项目使用的是 dotnet core 2.2。我不得不使用 dotnet-svcutil 1.0.4,因为更高版本不适合我。 安装 dotnet-svcutil 对我有用。您可以在工具下的 Nuget Packages Manager 的“Manage Packages for solution”下搜索 dotnet-svcutil,然后安装
【讨论】:
以上是关于无法生成 deps.json 以启用迁移的主要内容,如果未能解决你的问题,请参考以下文章
无法生成显式迁移 - 具有多个上下文/配置的实体框架 6.1.3