1

我有一个要求,我需要更新组件/多媒体组件的系统属性(主要是创建和修改日期)。但是在创建组件时,我只能访问 Title 属性,通过它我可以设置组件的名称,所以有没有办法通过代码更新创建和修改日期。

在 Filenet 等大多数存储库中,系统属性不可直接编辑,但经过一些配置更改后,系统属性也可编辑。

在 SDL Tridion 中也可以在更改配置文件后使其他系统属性可编辑?如果是,那么我到底需要在哪里进行更改?

下面是我用来创建组件的代码:

core_service.ServiceReference1.SessionAwareCoreService2010Client client = 
    new SessionAwareCoreService2010Client();

client.ClientCredentials.Windows.ClientCredential.UserName = "myUserName";
client.ClientCredentials.Windows.ClientCredential.Password = "myPassword";

client.Open();

ComponentData component = (ComponentData)client.GetDefaultData(
                                     ItemType.Component, folderUri);
component.Title = targetFileName;
component.ComponentType = ComponentType.Normal;

请建议。

4

3 回答 3

3

如果您想在发生迁移的系统之间维护日期信息,那么一个好的方法是将“创建”和“修改”日期字段作为元数据添加到正在迁移的项目中。然后,您需要在从源存储库中导出这些字段之前使用适当的值填充这些字段。

我想不出其他受支持的方法。

于 2012-10-12T12:19:23.497 回答
1

正如@Jeremy 所述,这些是只读属性。除了为编辑提供信息之外,这些值很少用于其他用途。

也许如果您可以解释您的业务需求,有人可以提供替代解决方案。

于 2012-10-12T23:45:33.867 回答
0

您不能通过核心服务或任何接口修改和创建,因为 tridion 维护版本。

您可以设置创建和修订日期,但核心服务不会更改日期。

于 2012-10-13T04:54:40.880 回答