如何通过EntityFrameworkCore实现列自动生成并实时跟踪记录修改?

2026-03-26 23:040阅读0评论SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1593个文字,预计阅读时间需要7分钟。

如何通过EntityFrameworkCore实现列自动生成并实时跟踪记录修改?

注意:我使用的是 Entity Framework Core 2.0 (2.0.0-preview2-final)。正式版发布时,功能可能存在变动。设计数据库时,若需要添加跟踪记录的列,可随时进行修改,包括何时更新以及谁进行的更新。例如,您可能需要添加更新时间和更新者列。

注意:我使用的是 Entity Framework Core 2.0 (2.0.0-preview2-final)。正式版发布时,功能可能存在变动。

当您设计数据库时,有时需要添加列以跟踪记录何时更改,以及谁进行了更改。例如,您添加以下列:

  • CreatedAt
  • CreatedBy
  • LastUpdatedAt
  • LastUpdatedBy

您可以轻松地使用默认值和触发器来处理CreatedAtLastUpdatedAt列。老实说,创建触发器是件无聊的事情,你也不想自己做。此外,很难设置用户名,因为它是应用程序的信息;实际上,在Web程序的上下文中,它们只是连接到数据库的一个用户,因此,您无法使用数据库中CURRENT_USER函数设置跟踪列的值。

当然,您不想访问这个属性。相反,您希望 Entity Framework 为您自动执行,所以,解决的办法是调用SaveChangesSaveChangesAsync方法之前自动设置这些属性的值。

阅读全文

本文共计1593个文字,预计阅读时间需要7分钟。

如何通过EntityFrameworkCore实现列自动生成并实时跟踪记录修改?

注意:我使用的是 Entity Framework Core 2.0 (2.0.0-preview2-final)。正式版发布时,功能可能存在变动。设计数据库时,若需要添加跟踪记录的列,可随时进行修改,包括何时更新以及谁进行的更新。例如,您可能需要添加更新时间和更新者列。

注意:我使用的是 Entity Framework Core 2.0 (2.0.0-preview2-final)。正式版发布时,功能可能存在变动。

当您设计数据库时,有时需要添加列以跟踪记录何时更改,以及谁进行了更改。例如,您添加以下列:

  • CreatedAt
  • CreatedBy
  • LastUpdatedAt
  • LastUpdatedBy

您可以轻松地使用默认值和触发器来处理CreatedAtLastUpdatedAt列。老实说,创建触发器是件无聊的事情,你也不想自己做。此外,很难设置用户名,因为它是应用程序的信息;实际上,在Web程序的上下文中,它们只是连接到数据库的一个用户,因此,您无法使用数据库中CURRENT_USER函数设置跟踪列的值。

当然,您不想访问这个属性。相反,您希望 Entity Framework 为您自动执行,所以,解决的办法是调用SaveChangesSaveChangesAsync方法之前自动设置这些属性的值。

阅读全文