0

如何检查节点是否是新节点,我只希望在保存新节点时创建组件,使用 Umbraco 8

ContentService.Saved += this.ContentService_Saved;

    private void ContentService_Saved(IContentService sender, ContentSavedEventArgs e)
    {
        foreach (var node in e.SavedEntities)
        {
            if (node.ContentType.Alias == "basePage")
            {
                var childnode = sender.Create("Components", node.Id, "components");

                sender.Save(childnode, raiseEvents: false);
            }
        }
    }
4

1 回答 1

0

ContentService Events的Umbraco 文档恰好回答了您的具体问题。在页面的最底部,

您可以确定实体在其中任何一个事件中是否是全新的。在保存事件中 - 在实体被持久化之前 - 您可以检查实体的 HasIdentity 属性,如果它是全新的,则该属性将为“假”。在 Saved 事件中,您可以检查实体是否“记得脏”

于 2020-01-09T20:45:46.447 回答