0

在使用 Castle ActiveRecord 的桌面应用程序中

我打开一个 SessionScope 并在应用程序生命周期内保持活动状态,我在应用程序结束时处理它。

当我需要做“某事”时,我会这样做,如果我需要事务操作,我会根据需要创建 TransactionsScope(s) 一个嵌套事务,在事务正确结束后,我会刷新会话并继续保持 SessionScope 活动。

这种方法正确吗?或者我需要在 bl 进程开始时打开一个 SessionScope 并在最后关闭它?如果是,为什么?

我使用LazyLoad,一个进程可以根据需要调用另一个进程,同时单个进程可以单独运行。

-更新- 正确的方法是在表单级别打开一个会话范围,但是由于 ar 会话范围是以堆栈方式创建的,我不能在同一级别拥有超过 1 个会话范围,我只有一个会话范围进入另一个,有人知道如何解决这个问题吗?

4

1 回答 1

0

已解决:实现 IThreadScopeInfo 管理堆栈集合。我开始认为城堡 ar 已被弃用。

谢谢你。

于 2011-11-29T11:00:27.633 回答