我只是想知道,是否可以在SDL Tridion 2011 SP1中创建数据库表并从事件处理程序访问它。
要求:我想利用在事件处理程序中创建的数据库表来自动创建每个组件的页面创建。
数据库表将包含有关每个模式的页面模板和组件模板的信息。
每当创建组件时,都会触发偶数处理程序。它应该从给定模式的数据库中获取组件模板,页面模板,并自动创建页面。我想在Tridion中创建这个数据库。我只想知道是否可以在Tridion中创建这样的数据库。是否有可能以更好的方式实现这一目标?
答案 0 :(得分:3)
这个要求对我没有任何意义,但也许我对你想要达到的目标的信息太少了。
因此,要严格回答您的问题:在事件处理程序中,您可以执行任何操作,因为您处于完整的.NET编程上下文中。如果你想create
数据库,那是可能的。
注意:如果您想在事件系统中自动创建页面,则可以在不创建任何其他数据库或表的情况下执行此操作。同样,我需要更多关于你想要完成什么的信息。
编辑1: 我建议不要在Tridion CM数据库中创建任何其他表,仅仅是为了保持分离 - Tridion应该保留什么Tridion和你创建的任何自定义,应该在不同的数据库或命名空间中。当你升级你的CM时,你会很高兴这样做。
我还建议在数据库表之外存储自动页面创建所需的参数(例如,组件模板,页面模板)。想想文件夹元数据,配置文件等。将它存储在数据库表中本身并不错,但这有点过分。
答案 1 :(得分:2)
如果您询问是否可以在与SDL Tridion CM数据库相同的数据库服务器上创建其他数据库,则答案是肯定的。如果那不是你的意思,我不知道你在Tridion建立一个数据库是什么意思,所以请澄清。
单独注意,使用文件夹上的元数据来解决您的挑战更为常见。这为您提供了数据在一个数据存储区中的好处,并且可以在环境之间进行内容移植。