WPF触发器

本文介绍了WPF中的触发器,包括控件触发、样式触发、控件模板触发和数据模板触发,并与数据库触发器进行了对比,强调了它们在事件响应和业务规则强制中的作用。同时,详细阐述了数据库中的INSERT、UPDATE、DELETE触发器,以及inserted和deleted表的应用,强调了这些触发器在确保数据完整性和业务一致性方面的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一 定义
    WPF触发器. WPF中的触发器,是对WPF事件的一种封装,WPF中的触发器,有多种方式,总结起来可分为:. 控件触发(FrameworkElement.Triggers集合) .
    样式触发(Styles.Triggers集合) .
    控件模板触发(ControlTemplate.Triggers集合) .
    数据模板触发(DataTemplate.Triggers集合) .
    每个对应的触发器都是一个集合,上面所有的Triggers都是一个TriggerCollection的泛型集合,其定义基本都是如此

二 使用
    触发器是在对表进行插入、更新、删除操作时自动执行的存储过程,常用于强制业务规则,是一种高级约束,可以定义比用check约束更为复杂的约束。可以执行复杂的SQL语句(if/while/case)
    1触发器可以定义在特定的表上,
    2与表相关自动触发执行
    3不能直接调用 是一个事务(可以回滚)

三 触发器的类型
    (1) DELETE触发器
    
    (2) INSERT触发器
    
    (3) UPDATE触发器
    
    inserted表和deleted表

四 系统自动在内存中创建deleted表或inserted表

    Deleted表和inserted表都是只读的,不允许修改;触发器执行完成后自动删除Inserted表
    
    临时保存了删除或更新前的记录行
    
    可以从inserted表中检查插入的数据是否满足业务需求
    
    如果不满足,则向用户报告错误消息,并回滚插入操作

Deleted表

    1 临时保存了删除或更新前的记录行
    
    2 可以从delered表中检查被删除的数据是否满足业务需求
    
    3 如果不满足,则向用户报告错误消息,并回滚删除操作
    
    注意:在执行insert操作时,先创建inserted表,将插入的语句放到inserted表中,判断插入语句是否是否符合业务需求,如果不满足就向用户保存错误消息,并回滚插入操作,如果满足则执行成功.
    
    执行deleted操作时,先创建deleted表,将删除的语句放到deleted表中,判断删除的语句是否符合业务需求,如果不满足就想用户报告错误信息,并回滚删除操作,如果满足则执行成功
    
    执行update操作时,先创建inserted表和deleted表,将要修改的表中数据加入deleted表中,
    
    然后将修改后的数据放入inserted表中,判断语句是否符合业务需求,如果不满足就向用户保存错误消息,并回滚插入操作,如果满足则执行成功.

(部分数据来源于网络)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值