MDriven:持久化的瞬态实例 class

MDriven: Transient instance of persistent class

在 MDriven 中,我有一个持久性 class,我需要为其创建一个瞬态实例。

这可能吗?

我知道解决方法是像往常一样创建然后丢弃它。

澄清 2018-02-02 17:04 UTC+1:
我需要在不向模型、编译时间添加任何内容的情况下执行此操作。

是的,您是对的 - 无法将 class 更改为在运行时变为瞬态。

但是你可以 subclass 它...并使 subclass 短暂...我自己就有那个确切的需要并以这种方式解决了它。

示例:MonthDemandSupplyCorrection 是持久的 - 但 MDSC_Placeholder 不是

Update:既然需求被明确为"not known in design time" - 更好的答案是创建一个普通实例并避免保存它。这可以通过这样的撤消服务和内存事务来确保:

  EcoSpace.Undo.StartTransaction();
  try
  {
     //Any changes you need
  }
  finally
  {
    EcoSpace.Undo.RollbackTransaction(); 
  }

您可以尝试 umlrt - 在运行时使用模型、类 等。例如 - https://www.capableobjects.com/2016/07/21/calling-your-own-c-net-things-from-turnkeyserver-side/

Migth 帮助 - 旧的免费电子书 - ECO III 书 作者:阿洛伊斯·施密德