1
私は、ユーザがページを作成したときに自動的にページを作成するためにイベントをトリガしています。ユーザがSDL Tridion 2011 SP1で1ページを作成したときにページを作成するイベント
namespace TestEventHandler
{
[TcmExtension("MyEventHandlerExtension")]
public class MyEventHandler : TcmExtension
{
public MyEventHandler()
{
Subscribe();
}
public void Subscribe()
{
EventSystem.Subscribe<Page, SaveEventArgs>(HandlerForProcessed, EventPhases.Processed);
//EventSystem.Subscribe<Page, PublishEventArgs>(HandlerForInitiated, EventPhases.Initiated);
}
private void HandlerForProcessed(Page subject, SaveEventArgs args, EventPhases phase)
{
//create page.
Tridion.ContentManager.Session mySession = new Tridion.ContentManager.Session(@"user");
XmlElement XmlElement = null;
Page newPage = new Page(XmlElement, mySession);
newPage.Title = subject.Title + "_auto";
newPage.FileName = subject.FileName + "_auto";
newPage.PageTemplate = subject.PageTemplate;
newPage.Save(true);
newPage.CheckOut();
}
}
}
ページを自動的に作成していません。私はいくつかの変更がこのコードのために必要と思う。
「このユーザーの偽装には、偽装ユーザーとして構成するMachinename \ MTSUserアカウントが必要です」というエラーが表示されます。
誰でも必要な変更を行うことはできますか?私はこれにTOM.net APIを使用しています。
ありがとうございます。
ありがとうございました – Patan