使用SDL Tridion 2011核心服务创建包含必填字段的空白虚拟组件
我想使用核心服务在SDL Tridion 2011中创建一个空白组件。在流程开始时,我拥有的唯一信息是模式URI。模式可以包含任何类型的字段(文本、rtf、数字日期、嵌入等),其中一些字段可能是必需的 我知道对于必填字段,我需要在其中保存一些伪值,这是可以接受的,因为它们将在以后手动更改使用SDL Tridion 2011核心服务创建包含必填字段的空白虚拟组件,tridion,Tridion,我想使用核心服务在SDL Tridion 2011中创建一个空白组件。在流程开始时,我拥有的唯一信息是模式URI。模式可以包含任何类型的字段(文本、rtf、数字日期、嵌入等),其中一些字段可能是必需的 我知道对于必填字段,我需要在其中保存一些伪值,这是可以接受的,因为它们将在以后手动更改 如何实现这一点?首先-确保模式中的所有字段都设置为可选,否则将永远无法工作 第二,你节省 当可选字段没有值时,它将没有XML表示。如果您有一个定义如下组件的架构: 字段1 字段2 字段3 当所有字段都是可选
如何实现这一点?首先-确保模式中的所有字段都设置为可选,否则将永远无法工作 第二,你节省 当可选字段没有值时,它将没有XML表示。如果您有一个定义如下组件的架构:
- 字段1
- 字段2
- 字段3
SomeValue
如果其中一个字段不是必填字段,则必须提供一个值。如果您使用的是CoreService,那么您可以使用
ReadSchemaFields
类来获取字段和有关字段的一些信息-类型、强制/可选等。通过Core服务更新组件的字段已经在这里得到了回答:
该帖子指向一个助手类,您可以在此处找到:
如果这些都不能帮助您创建组件,我建议您发布代码,而不是让我们为您编写。查看您的问题/要求,以了解您到底在寻找什么,这样我们就可以回答尽可能最好的相关问题 您是否在问“如何使用核心服务为组件创建编写通用代码?”而不是使用预先知道所有字段的特定模式创建组件 如果这正是您想要的,那么以下是您需要做的:
通过核心服务示例代码读取模式字段可以找到我们询问有关用例的问题,因为为特定模式填充特定字段的代码只在一个环境中工作。可以自动确定字段的代码是可重用的 如果用例是针对具有内联编辑(Experience Manager或SiteEdit)的Tridion设置,则正确的方法是内容/组件类型。它们定义了一个带有“垃圾默认值”的引用组件、对作者的说明,甚至保存位置上下文 如果用例允许作者创建虚拟组件,这是开箱即用的:
CTRL+C
CTRL+V
- 需要默认值的字段可以在架构中具有实际默认值