c# - Entity Framework 6 代码优先触发器

标签 c# sql entity-framework entity-framework-6

我正在使用 Entity Framework 6 Code First,并想创建一个触发器。

我该怎么做?

我需要触发器的原因是因为用户可以直接编辑数据库或通过我正在编写的程序编辑数据库,我需要确保表中的 2 列既不为空,也不为空.

我一直在寻找,找不到方法。

有没有办法先使用代码指定触发器?

最佳答案

Entity Framework 不支持触发器,尽管您当然可以手动执行创建触发器的语句,但您需要在创建表后执行此操作(如果使用迁移)。

您可以使用 Ladislav 在 EF 4.1 code-first adding a trigger to a table 中指定的技术

注意他的警告,但是,EF 不会知道触发器中所做的任何更改。如果您的意图只是确保表中的 2 列不为空,则最好使用约束(EF 也不支持约束,但您可以手动添加它们)。

关于c# - Entity Framework 6 代码优先触发器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21943314/

相关文章:

sql - 如何在一行中添加具有相同值和ID的多行

PHP/MySQL - AND/OR 问题

c# - 插入新记录前检查记录是否存在

c# - 命名空间中不存在类型或命名空间名称 'Core'

c# - 如何在 C#/SQL Server 中跟踪重复的日历事件?

c# - ImmutableDictionary 枚举顺序

c# - 表达式<Func<T, bool 值>> VS Func<T, bool 值>

sql - 如果使用 where 子句时数据为空,则将数据计为零

c# - 上下文在 Code First 模式下使用,代码是从 EDMX 文件生成的

c# - 在 C# 中创建或替换没 Root过的 XML 中的节点