c# - Kentico TreeNode Delete 方法不删除依赖项

标签 c# asp.net content-management-system kentico

我有以下代码块,用于检索 kentico 中的文档节点并将其删除。它确实删除了 kentico 节点,但没有删除保留在数据中的基础文档类型。帮忙?!

CMS.TreeEngine.TreeProvider provider = new CMS.TreeEngine.TreeProvider(CMS.CMSHelper.CMSContext.CurrentUser);
CMS.TreeEngine.TreeNode image = provider.SelectSingleNode(new Guid(imageID), "en-US", CMS.CMSHelper.CMSContext.CurrentSite.SiteName);

if (image != null)
{
    CMS.TreeEngine.TreeNode school = provider.SelectSingleNode(image.Parent.NodeID, "en-US", true, true);
    if (school != null)
    {
        string CMSUserID = school.GetValue("CMSUserID").ToString();
        if (CMSUserID == ui.UserID.ToString())
        {
            image.Delete(false);                                        
        }
    }
}

最佳答案

您需要使用 CMS.WorkflowEngine 命名空间中的 DeleteDocument 方法。它确保删除所有相关对象。

DocumentHelper.DeleteDocument(图像, 提供者, 真, 真, 真);

关于c# - Kentico TreeNode Delete 方法不删除依赖项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6741193/

相关文章:

c# - DbUpdateConcurrencyException 和 DbConcurrencyException 有什么区别?

asp.net - 如何授权在 Asp.Net MVC 中使用外部登录登录的用户

c# - Umbraco 7 - 如何从 IPublishedContent 获取发布日期?

c# - 如何快速找到我的 EDMX 模型中的特定表?

c# - 如何捕获此 SignalR 异常

c# - 对于自动 C# 代码生成 : ApexSql Code or Entity Framework?

c# - 使用 $Resources 更改 CSS 样式

.net - 如果您必须选择一个免费的 CMS 来与 ASP.NET MVC 集成,您会选择什么?

php - Silverstripe:清理 URL

c# - WPF 数据网格在不应该刷新时自行刷新