如何在EF Core中添加自定义添加迁移行为

如何在EF Core中添加自定义添加迁移行为,第1张

因为CreateTable你需要改写void Generate(CreateTableOperation operation, IModel model, MigrationCommandListBuilder builder)方法。CreateTableOperation包含相同AddColumnOperation类型的 *** 作属性。

这是一个完整的例子

protected override void Generate(CreateTableOperation operation, IModel model, MigrationCommandListBuilder builder){

base.Generate(operation, model, builder)

foreach (var columnOperation in operation.Columns) //columnOperation is AddColumnOperation

{

//operation.FindAnnotation("MyAttribute")

}}

这些都是EF的命令, 就像 在cmd窗口输入ping 123.123...这样的命令

enable-migration 是开启数据库迁移的命令

add-migration 新增一个迁移项, 比如你新加一个类, 同时生成对应的表UserInfo:

[Table("UserInfo")]

public class 用户

{

一堆的属性

}

迁移命令就是 add-migration 用户add, 这个命令执行完之后会 生成一个迁移文件(可修改),

然后执行命令update-database, 这个命令会根据迁移文件生成对应的表.

当然了, 新建类之后, 在update-database之前, 记得要把这个类在对应的DataContext中引用

更改类的属性的命令是 add-migration 用户change, 然后update-database

删除类的命令是 add-migration 用户delete, 然后update-database

Entity Framework (EF) Core 是轻量化、可扩展、开源和跨平台版的常用 Entity Framework 数据访问技术。

EF Core 可用作对象关系映射程序 (O/RM),这可以实现以下两点:

使 .NET 开发人员能够使用 .NET 对象处理数据库。

无需再像通常那样编写大部分数据访问代码。

EF Core 支持多个数据库引擎,请参阅数据库提供程序了解详细信息。

对于 EF Core,使用模型执行数据访问。 模型由实体类和表示数据库会话的上下文对象构成。 上下文对象允许查询并保存数据。 有关详细信息,请参阅创建模型。

EF 支持以下模型开发方法:

从现有数据库生成模型。

对模型手动编码,使其符合数据库。

创建模型后,使用 EF 迁移从模型创建数据库。 模型发生变化时,迁移可让数据库不断演进


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10803641.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-11
下一篇 2023-05-11

发表评论

登录后才能评论

评论列表(0条)

保存