繁体   English   中英

.NET Core NuGet EF Core 版本不匹配

[英].NET Core NuGet EF Core Version doesn't match

我正在学习本教程: 教程

我搜索了大约 4 个小时,没有找到解决此错误的方法:

启动项目“DatabaseConnection”是 Visual Studio 2015 的 ASP.NET Core 或 .NET Core 项目。此版本的 Entity Framework Core 包管理器控制台工具不支持这些类型的项目。

我使用以下命令生成它:

Scaffold-DbContext "Server=127.0.0.1;Database=vicotv;Trusted_Connection=True;" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models

接下来我尝试更新 EF SQL 服务器。

PM> Install-Package Microsoft.EntityFrameworkCore.Tools -Version 1.1.0-msbuild3-final

获取 https://api.nuget.org/v3/registration1-gz/microsoft.entityframeworkcore.tools/index.json 获取 https://www.nuget.org/api/v2/curated-feeds/microsoftdotnet/Packages(Id ='Microsoft.EntityFrameworkCore.Tools',Version='1.1.0-msbuild3-final') OK https://api.nuget.org/v3/registration1-gz/microsoft.entityframeworkcore.tools/index.json 143ms 错误查找“https://www.nuget.org/api/v2/curated-feeds/microsoftdotnet/”的存储库:从源检索“Microsoft.EntityFrameworkCore.Tools.1.1.0-msbuild3-final”的包元数据时出错“微软和.NET”。 任务已取消。 从“nuget.org”检索包“Microsoft.EntityFrameworkCore.Tools 1.1.0-msbuild3-final”。 安装 NuGet 包 Microsoft.EntityFrameworkCore.Tools.1.1.0-msbuild3-final。 已成功将“Microsoft.EntityFrameworkCore.Tools 1.1.0-msbuild3-final”安装到 DatabaseConnection 执行 nuget 操作花费了 122.12 毫秒时间:00:00:00.9439736

但是由于这个错误,包没有更新。

以下是我的 project.json 文件:

{
"buildOptions":{
    "emitEntryPoint":true,
    "preserveCompilationContext":true
},
"dependencies":{
    "Microsoft.EntityFrameworkCore.SqlServer":"1.1.0",
    "Microsoft.EntityFrameworkCore.SqlServer.Design":"1.1.0",
    "Microsoft.ApplicationInsights.AspNetCore":"2.0.0",
    "Microsoft.AspNetCore.Mvc":"1.1.1",
    "Microsoft.AspNetCore.Routing":"1.1.0",
    "Microsoft.AspNetCore.Server.IISIntegration":"1.1.0",
    "Microsoft.AspNetCore.Server.Kestrel":"1.1.0",
    "Microsoft.Extensions.Configuration.EnvironmentVariables":"1.1.0",
    "Microsoft.Extensions.Configuration.FileExtensions":"1.1.0",
    "Microsoft.Extensions.Configuration.Json":"1.1.0",
    "Microsoft.Extensions.Logging":"1.1.0",
    "Microsoft.Extensions.Logging.Console":"1.1.0",
    "Microsoft.Extensions.Logging.Debug":"1.1.0",
    "Microsoft.Extensions.Options.ConfigurationExtensions":"1.1.0",
    "Microsoft.NETCore.App":"1.1.0",
    "Microsoft.EntityFrameworkCore.Design":"1.1.0",
    "Microsoft.EntityFrameworkCore":"1.1.0",
    "Microsoft.AspNetCore.Server.IISIntegration.Tools":"1.1.0-preview4-final",
    "Microsoft.EntityFrameworkCore.Tools":"1.1.0-msbuild3-final"
},
"frameworks":{
    "netcoreapp1.0":{
        "imports":[
            "dotnet5.6",
            "portable-net45+win8"
        ]
    }
},
"publishOptions":{
    "include":[
        "wwwroot",
        "**/*.cshtml",
        "appsettings.json",
        "web.config"
    ]
},
"runtimeOptions":{
    "configProperties":{
        "System.GC.Server":true
    }
},
"scripts":{
    "postpublish":[
        "dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%"
    ]
},
"tools":{

},
"runtimes":{
    "win10-x86":{

    },
    "win10-x64":{

    }
}}

我的网络信息:

PM> dotnet --info

.NET 命令行工具 (1.0.0-preview2-1-003155)

产品信息:

版本:1.0.0-preview2-1-003155

提交 SHA-1 哈希:d7b0190bd4

运行环境:

操作系统名称:Windows

操作系统版本:10.0.14393

操作系统平台:Windows

摆脱:win10-x64

我应该做些什么?

我在尝试使用 Visual Studio 2015.Netcore 数据项目为代码优先项目创建数据迁移时遇到了类似的错误:

“启动项目‘Company.Application.Data’是 Visual Studio 2015 的 ASP.NET Core 或 .NET Core 项目。此版本的 Entity Framework Core 包管理器控制台工具不支持这些类型的项目。”

使用 PowerShell 使用以下步骤解决:

  1. 导航到项目目录(在我的例子中是 f:_dev\Company.Application.Data)
  2. 类型: dotnet 还原
  3. 添加新的迁移示例类型: dotnet ef migrations add MyExampleMigrationName
  4. 您的迁移应该出现在 visual studio 中
  5. 根据需要编辑您的新迁移

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM