我是Tridion事件系統的新手。我寫了一個小代碼。事件不起作用
[TcmExtension("MyEventHandlerExtension")]
public class EH : TcmExtension
{
public EH()
{
Subscribe();
}
public void Subscribe()
{
//EventSystem.Subscribe<Component, DeleteEventArgs>(HandlerForInitiated, EventPhases.Initiated);
EventSystem.Subscribe<Tridion.ContentManager.CommunicationManagement.Page, Tridion.ContentManager.Extensibility.Events.PublishOrUnPublishEventArgs>(HandlerForCommitted, EventPhases.All);
}
private void HandlerForCommitted(IdentifiableObject subject, PublishOrUnPublishEventArgs args, EventPhases phase)
{
TDSE obj = new TDSE();
Tridion.ContentManager.Interop.TDS.Publication pub = obj.GetPublication("tcm:0-150-1");
Tridion.ContentManager.Interop.TDS.Page pubPage = obj.GetPage("tcm:150-12374-64", pub);
pubPage.Publish("tcm:0-1-65538", false, true, false, default(DateTime), default(DateTime), default(DateTime));
}
}
使用此代碼我想每次發佈發佈和取消發佈事件時發佈頁面。 我構建了這個代碼並在tridion配置文件中註冊它的路徑。 但它沒有工作。請幫助
請標記下面的解決方案之一,如果他們解決了您的問題 – robrtc
僅供參考,它可能失敗,因爲您沒有在TDSE上調用Initialize和Impersonate。但正如其他人所說的那樣,你不應該使用舊的TOM - 使用TOM.NET。 –