【问题标题】:Orchard ContentHandler invocation果园 ContentHandler 调用
【发布时间】:2015-10-14 19:39:06
【问题描述】:

我正在编写一个模块,以便在发布或取消发布我的模块所附加到的内容项时向导航菜单添加一些功能。 在继承自 ContentHandler 类的处理程序中,我覆盖了“已发布”和“未发布”方法,并且功能按预期工作。 但是,问题是,即使对于没有附加我的模块(内容部分)的内容类型,也会调用我模块中的内容处理程序方法。

我也尝试从“IContentHandler”而不是“ContentHandler”继承,但结果相同。

有什么方法可以绑定 ContentHandler 的 'published、published、unpublished 等' 方法,以便仅在内容部分所附加到的内容项被修改时调用它们?

【问题讨论】:

    标签: c# orchardcms orchardcms-1.7


    【解决方案1】:

    好的,找到了答案。 在此处发布以供参考。

    一旦您创建了一个内容部分,比如“abcPart”,要触发“发布、取消发布”和其他与 ContentHandler 关联的方法,您只需在您的部分处理程序的构造函数中添加此代码。

    public class MyHandler : ContentHandler
    {
        public MyHandler ()
        {
            OnPublishing<abcPart>((context, part) => {
                /*your logic here*/
            });
        }
    }
    

    以这种方式,只有在发布附加了“abcPart”的内容项时,才会触发构造函数的“OnPublishing”部分中的代码。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-05-21
    • 1970-01-01
    • 2012-07-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-04
    相关资源
    最近更新 更多