gpt4 book ai didi

c# - 在 EpiServer 8 中,如何扩展 Scheduled Publish 事件?

转载 作者:行者123 更新时间:2023-11-30 23:24:23 25 4
gpt4 key购买 nike

我正在使用 EpiServer 8,并且需要在保存计划发布时执行自定义 API 调用。目前我能够通过初始化模块捕获即时发布事件,如下所示:

[InitializableModule]
[ModuleDependency(typeof(EPiServer.Web.InitializationModule))]
public class ContentEventInitializer : IInitializableModule
{
public void Initialize(InitializationEngine initializationEngine)
{
var events = ServiceLocator.Current.GetInstance<IContentEvents>();
events.PublishingContent += EventsPublishingContent;
}

public void Preload(string[] parameters)
{
}

public void Uninitialize(InitializationEngine initializationEngine)
{
var events = ServiceLocator.Current.GetInstance<IContentEvents>();
events.PublishingContent -= EventsPublishingContent;
}

private void EventsPublishingContent(object sender, ContentEventArgs contentEventArgs)
{
// Tell our API that maintenance started.
}
}

上述 EventsPublishingContent 事件在编辑器立即发布内容时起作用。该方法上的 Visual Studio 断点成功命中。但当网站编辑选择“安排发布”时,它不会执行。

当编辑查看“发布计划”对话框并选择“计划”按钮时,我想捕获以下内容并将其发送到我们的 API:

  • “发布更改”值。
  • 将要发布的页面。

执行此操作的正确方法是什么?谢谢。

最佳答案

当使用“Schedule for publish”时,页面将由预定作业发布,我认为不会触发任何事件,至少看起来不像,更多信息在这里:http://world.episerver.com/blogs/Petra-Liljecrantz/Dates/2016/3/differences-between-scheduled-publish-and-normal-publish/

关于c# - 在 EpiServer 8 中,如何扩展 Scheduled Publish 事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37821077/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com