我有一个要求,例如当用户单击“发布项目”按钮时,我想执行一些自定义代码,在其中我将对当前项目运行一些验证,如果一切正常,则将发布该项目,否则将显示警报并应该禁用发布管道。
因此,为此我在 publishItem 管道下创建了自定义处理器,一切正常,但是当我显示警报时,它给了我空引用异常。
Sitecore.Context.ClientPage.ClientResponse.Alert(message);
我不确定我在这里做错了什么,还有其他方法可以实现这一点...请建议以下是我编写的示例代码 下面的类是从PublishItemProcessor继承的。
public override void Process(PublishItemContext context)
{
Assert.ArgumentNotNull(context, "context");
// code goes here
if (condition)
{
string message = "Required fields are missing";
context.AbortPipeline();
Sitecore.Context.ClientPage.ClientResponse.Alert(message);
}
}
<publishItem>
<processor type="Namespace.CheckRequiredChildItems, Namespace" />
</publishItem>