【问题标题】:Upgrade Tridion events from TOM to TOM.NET将 Tridion 事件从 TOM 升级到 TOM.NET
【发布时间】:2012-11-19 15:41:42
【问题描述】:

对于 TOM.NET 中的哪些类替换 Tridion 的旧 COM API 中的功能是否有任何指导或文档?

我无法找到与 TDSE 对应的入口点。

【问题讨论】:

    标签: tridion


    【解决方案1】:

    与旧的 TDSE 最接近的类是 Session 类,它公开了大部分(如果不是全部)“系统级”方法和属性(如当前的 UserWorkflowManager 等)。

    在事件系统中,您将获得一个会话作为主题的一部分——所有派生自IdentifiableObject 的类都公开一个Session 属性——并且该会话将以导致事件被触发的用户身份运行。在 TOM/COM 时代,情况并非总是如此,而且您经常不得不在代码中调用 .Impersonate 来充当当前用户。使用 TOM.NET,这不再是必需的,只要您使用正确的会话即可。

    祝你升级顺利,新的事件系统引擎与旧引擎截然不同,真的没有回头路了。

    【讨论】:

    • 感谢 nuno - 我正在完成six stages的第一阶段
    • :) 玩得开心,当您进入第 3 阶段时告诉我们,我们随时为您提供帮助
    【解决方案2】:

    TDSE 对象在 TOM.NET 中并不真正存在。您拥有的最接近的对象是 Session 类,尽管您可能不需要它,因为您将收到目标对象作为处理程序的主题参数。尝试阅读 Bart 的这篇文章:

    https://sdltridionworld.com/articles/sdltridion2011/sdltridion2011eventsystem.aspx

    本文对设置事件处理程序进行了很好的概述,并提供了一个矩阵文档的链接,将旧的基于 COM 驱动的基于 TOM 的事件系统映射到新的基于 TOM.NET 的事件处理程序的新方法。

    【讨论】:

    • 替换 TDSE 类的系统对应的入口点是什么?
    • 在 TOM.NET 中最接近的是 Session 类。
    • 也许你可以给我们一个你试图迁移的基于旧的基于 TOM 的事件的例子。请在您的问题中发布此内容,我们也许可以为您提供一些帮助
    • 请记住,TOM 与 TOM.NET 非常不同,就像 COM 与 .NET 非常不同一样。不要指望在代码中进行一些查找/替换后事情会“正常工作”......
    • @NunoLinhares - 您能否添加一个实际答案,以便我将其标记为正确?
    【解决方案3】:

    查看 Rob Curlette 关于执行升级到 2011 的帖子。它讨论了事件系统的升级: http://www.curlette.com/?p=90

    Bart 还提供了一个将旧事件映射到新事件的表格: http://sdltridionworld.com/images/event_matrix_tcm89-18738.pdf

    希望这可以帮助您入门!

    【讨论】:

    • 感谢 nickoli - 我已经看过这两种资源了。我正在寻找将旧功能映射到新功能的文档。特别是像 TDSE 这样的顶级类。
    • 正如 Chris 所说,这并不存在。
    • 我意识到它不存在。我在问取代它的新课程是什么。我正在寻找的课程是 Tridion.ContentManager.Session。注释是这样说的: 这是 TOM.NET API 的入口点。它用于检索现有对象并创建新的系统范围对象。检索方式如下:Session session = engine.GetSession();
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-05-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-31
    • 1970-01-01
    • 1970-01-01
    • 2012-05-18
    相关资源
    最近更新 更多