コンテンツ ノードに子がある場合、コンテンツ ノードが破棄されないようにしたいと考えています。次のようにイベントハンドラーをセットアップします。
public class KeepSafeEvents : ApplicationBase
{
public KeepSafeEvents()
{
Document.BeforeMoveToTrash += new Document.MoveToTrashEventHandler(Document_BeforeMoveToTrash);
}
void Document_BeforeMoveToTrash(Document sender, umbraco.cms.businesslogic.MoveToTrashEventArgs e)
{
if (sender.HasChildren)
{
e.Cancel = true;
}
}
}
ただし、これは機能しないようです。これは、削除プロセスが子ノードを最初にゴミ箱に移動してから、親ノード (子ノードがない) を処理するためだと思います。別の可能な解決策はありますか?それとも、上記の単純な間違いを犯していますか?