数据库优先迁移EF Core

3
我正在尝试使用EF Core将NORTWIND数据库迁移到测试项目。在网络的帮助下,我已经克服了一些障碍,但现在我卡住了。如果有人能够解决我的问题并指引我正确的方向,我将非常高兴。
问题: 当我在VS的程序包管理器控制台中运行以下命令时: Scaffold-DbContext "Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=NORTHWND;Integrated Security=True;" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models
我得到了“构建错误”的消息。我无法确定问题所在,因此很难在网上寻找解决方案。
这是我的project.Json内容:
 "dependencies": {
"Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.0.0",
"Microsoft.EntityFrameworkCore.SqlServer": "1.1.0",
"Microsoft.EntityFrameworkCore.Design": "1.1.0",
"Microsoft.EntityFrameworkCore.SqlServer.Design": "1.1.0",
"BundlerMinifier.Core": "2.2.306",
"Microsoft.ApplicationInsights.AspNetCore": "1.0.2",
"Microsoft.AspNetCore.Diagnostics": "1.1.0",
"Microsoft.AspNetCore.Mvc": "1.1.0",
"Microsoft.AspNetCore.Razor.Tools": "1.1.0-preview4-final",
"Microsoft.AspNetCore.Routing": "1.1.0",
"Microsoft.AspNetCore.Server.IISIntegration": "1.1.0",
"Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.1.0-preview4-final",
"Microsoft.AspNetCore.Server.Kestrel": "1.1.0",
"Microsoft.AspNetCore.StaticFiles": "1.1.0",
"Microsoft.EntityFrameworkCore.Tools": "1.1.0-preview4-final",
"Microsoft.Extensions.Configuration.EnvironmentVariables": "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"
  },

 "tools": {
"Microsoft.EntityFrameworkCore.Tools": "1.1.0-preview4-final"
  },

这是我收到的错误信息:

enter image description here

这是错误代码:

enter image description here

告诉我如果你想从我的项目中看到其他内容。我知道仅凭我提供的信息可能很难给予帮助,但我会很乐意发布更多信息。请告诉我您想要查看什么。
感谢您所有的帮助和提示!

你得到了什么错误? - M. Wiśnicki
首先尝试从VS构建项目(而不是从包管理器控制台),这可能会提供有关构建错误的更多详细信息。 - Knelis
我在初始帖子中更新了一张错误清单图片。 - AllramEst
尝试在你的project.json中将netcoreapp1.0更改为netcoreapp1.1,然后应该就没问题了。 - Kos
很不幸,这个方法没有起作用。:( - AllramEst
显示剩余3条评论
3个回答

1

重新启动了一个新项目,按照你分享的链接中的教程进行了操作。但仍然出现构建错误... - AllramEst
抱歉,您已经在PMC上尝试过这个(我假设您选择了带有单独用户身份验证的Web应用程序): Install-Package Microsoft.EntityFrameworkCore.Tools.DotNet -pre Install-Package Microsoft.AspNetCore.Razor.Tools -pre Install-Package Microsoft.AspNetCore.Server.IISIntegration.Tools -pre - Luca C.
还请尝试更新您的SDK核心: https://www.microsoft.com/net/download/core#/current - Luca C.
抱歉。已更新SDK和所有软件包,但没有运气。 - AllramEst
我在VS 2017 RC中尝试过,它可以正常工作...很抱歉...但如果我可以给一个建议,你应该尝试下载它,因为如果你开发dotnet core,项目环境又再次改变了。你没有project.json文件,而是csproj配置文件、bower和更多的东西。我已经从VS2015转到VS2017了...祝你好运,Luca。 - Luca C.
我正在下载VS 2017 RC,我会试一下。 - AllramEst

0

您似乎缺少以下引用:

Microsoft.EntityFrameworkCore.Relational 
Micorsoft.EntityFrameWorkCore.Relational.Design

您可能还需要:

Microsoft.AspNetCore.Hosting.Abstractions
Microsoft.AspNetCore.Hosting.Server.Abstractions
Microsoft.AspNetCore.Http.Abstractions

如果您的服务器是域的一部分,则连接字符串需要更改为类似以下内容:Server=(localdb)\\domain\\mssqllocaldb;Data Source=xxxxxxx;Initial Catalog=NorthwindDb;Trusted_Connection=True; - bilpor

0
大家好,非常感谢大家的帮助。我终于成功导入了一个数据库。成功的关键是通过NuGet包管理器更新解决方案,并将以下行添加到依赖项中:
"Microsoft.NETCore.App": {
      "version": "1.1.0",
      "type": "platform"
    },

   "runtimes": { "win10-x64": {} },
再次感谢大家的建议!!!如何在多个答案上打勾?因为大家的回答最终帮我解决了这个问题。

你可以给有帮助的回答和评论点赞,但只能选择一个最完整且正确回答问题的答案。 - Kos

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接