繁体   English   中英

当/使用差异定制实体字段更新时,自动更新定制实体字段

Updating Custom Entity fields automatically when/with a diff Custom Entity fields are updated

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我有2个自定义实体,例如:CRM内部部署和业务。 建筑物有多个单位/套房号,并且每个单位/套房号都由一家企业占用。 如果建筑单元/套房正在进行装修,则必须暂时关闭该业务。

建筑单位/套房状态更改时,如何自动更新业务开/关? 更新不需要立即进行。 我需要搜索20000条记录以更新正确的业务实体。 此外,业务中还有一些字段,例如从建筑物中检索的开始日期和结束日期,并且关闭持续时间会以结束(减去)开始日期进行更新。

插件是唯一的方法,我如何使用插件实现它! 这将对服务器产生多大的影响,我是中级C#开发人员。 请提供正确方向的任何链接。 环保是2011年本地

非常感谢你 !!!

1 个回复

可以使用插件构建一个简单的解决方案。 同步插件可以立即(在Update消息的PreOperation或PostOperation阶段)甚至在同一数据库事务中,将状态更改更新到业务实体。

一般来说,使用插件可以构建最有效和无缝集成的业务逻辑。

但是,通常您实际上可以使用工作流实现几乎相同的效果。 构建工作流程的一些优点:

  1. 不需要熟练的软件开发人员来构建;
  2. 工作流程可以快速修改(“配置”)。
  3. 工作流的执行可以推迟(例如,直到满足条件或日期已过)。

工作流的一些缺点是:

  1. 在CRM 2011中,您的代码始终在原始数据库事务之外异步运行。
  2. 可能需要一段时间才能采取行动; 用户没有立即得到反馈;
  3. 查询和选择相关数据仅限于n:1关系(从n端到1端,反之亦然);
  4. 工作流的执行需要比插件更多的资源;
  5. 大量使用工作流很容易导致意大利面条系统真正难以维护和表现不佳。

在您的方案中,选择适当的业务记录的要求似乎太复杂而无法在工作流中处理。 在工作流程中,您基本上只能通过遵循手边记录上的查找引用来从一个记录导航到另一个记录。 这意味着只有在存在:1关系并且从n边导航到1边时,您才能从一条记录到另一条记录。

在插件中,您没有此限制; 在那里,您可以编写QueryExpression或Linq查询以获取所需的记录。 因此,对于您而言,插件似乎是我的正确选择。

1 自动更新定制的WordPress插件

我最近创建了一个new plugin ,它将在许多网站上使用(出于多种原因,该new plugin未托管在WordPress上)。 一大缺点-没有更新。 我已阅读: https://rudrastyh.com/wordpress/self-hosted-plugin-updat ...

4 JPA /休眠:如何在实体更新时自动更新字段

我正在使用Camel和JPA将实体持久保存到Postgres DB。 在每个实体中,我都有一个称为“历史”的字段,其中包含给定实体的所有旧值。 我正在寻找一种在每次更新操作之前自动填充此字段的方法。 在网上冲浪时,我发现了JPA拦截器,但我发现它们用于审计/记录目的。 我错了吗? 最好 ...

5 在Spring Data仓库上定制更新实体

我有XRepository接口(扩展了JpaRepository )。 在创建或更新X实体时,我需要在事务中调用另一个存储库( YRepository )的方法(确切地说:更新某些字段并在创建/更新的实体X使用新值)。 为此,我使用@Transactional方法和自定义REST Con ...

7 如何使用ADO.NET实体框架自动更新ModifiedAt字段?

Ruby on Rails具有魔术时间戳字段 ,当创建或更新记录时,这些字段会自动更新。 我正在尝试在实体框架中找到类似的功能。 我考虑过数据库触发器和SavingChanges事件处理程序。 有什么我可以忽略的更明显的方法吗? ...

2008-09-23 00:07:05 2 253   ado.net
8 实体存在或更新时如何自动更新实体

我有一个实体引用了另一个像这样的实体: 属性used表示该School实体是否使用,引用或不是。 创建所以,当一个School的实体应该used假的,但一旦一个Student ,使对它的引用,在used一定要变成真实的。 有没有自动的方法可以做到这一点,例如数据库中的触发器? ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM