EF Core 无法创建数据库 :( [关闭]
Posted
技术标签:
【中文标题】EF Core 无法创建数据库 :( [关闭]【英文标题】:EF Core cannot creating Database :( [closed] 【发布时间】:2022-01-12 08:33:23 【问题描述】:我想使用 EF 3.1 使用代码优先技术创建数据库。但是,无论我在 EF 6.0 中尝试什么,都不会创建数据库 。
【问题讨论】:
好吧,你能把你到目前为止尝试过的东西贴出来吗?您发布的代码不会创建任何内容。 将问题中的相关代码作为文本发布,而不仅仅是 DbContext 的图像。你如何使用那个 DbContext?您是否使用dotnet ef
命令创建数据库?你收到错误了吗?还是你打电话给EnsureCreated
?
如何/为什么混合使用 EF 6 和 EF Core?这是 2 个完全独立的产品。
首先,我正在尝试使用ef core。我与ef无关。由于我的模型有点长,我在下面的例子中展示了最短的。使用系统;使用 System.Collections.Generic;使用 System.Linq;使用 System.Text;使用 System.Threading.Tasks;使用核心;命名空间实体。具体 公共类类别:IEntity 公共 int CategoryID 获取;放; 公共字符串类别名称 获取;放;
使用系统;使用 System.Collections.Generic;使用 System.Linq;使用 System.Text;使用 System.Threading.Tasks;命名空间核心 公共接口 IEntity
【参考方案1】:
首先你需要使用命令dotnet ef migrations add Initial
创建迁移文件
然后您可以手动创建一个新的空数据库Adatech
。或者,如果具体情况是在迁移过程中自动创建数据库,您可以添加自己的新迁移(或在创建后修改Initial
)并将SQL CREATE DATABASE命令放在那里。 (不要忘记通过 Down() 方法中的回滚逻辑来补充这一点)
然后将此迁移应用到您的数据库:dotnet ef database update
上下文本身不会对您的数据库做任何事情,它只是您的应用程序范围内的数据库实体的模型。包含这些实体应如何与 db 关联的规则的模型。
更多https://docs.microsoft.com/en-us/aspnet/core/data/ef-mvc/migrations?view=aspnetcore-3.1
【讨论】:
当我尝试关注 doc- 构建失败。使用 dotnet build 查看错误以上是关于EF Core 无法创建数据库 :( [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
无法使用 EF Core 或 LinqToDb EF Core Tools 或 ADO.NET 运行任何存储过程创建脚本
如何使用 EF Core Code-First 创建具有子类别的类别表? [复制]