2

Orchard 中的内容处理程序文档提到Lifecycle Eventshttp://docs.orchardproject.net/Documentation/Understanding-content-handlers)。

大多数事件都是不言自明的,但我想知道是否有人能告诉我 , 和 之间OnActivatedOnInitializing区别OnLoading

4

1 回答 1

10

按射击顺序:

  • OnActivated- 内容项对象层次结构已创建,但尚未从 db 中获取

    用于准备内容部分以供进一步使用。例如。为延迟加载的对象设置 getter 和 setter,设置委托等。将其视为给定部分的“构造函数”。

  • OnInitializing- 内容项对象层次结构已创建,但尚未从 db 中获取。

    用于设置给定部件的初始/默认属性值。

  • OnLoading- 内容项即将从 db 加载。

    用于各种事物。仅当数据库中存在项目并且即将加载时才触发。Orchard 核心使用此事件为零件记录设置惰性加载器。

  • OnLoaded- 内容项已从数据库加载

    用于各种事物。仅当数据库中存在项目并且已设置所有记录加载器时才触发。您可以确定part.Record此时任何部分都不会为空,并且将包含从数据库中获取的数据。

于 2013-05-08T14:36:47.043 回答