以编程方式将内容项分配/添加到 ListPart Orchard Core

Assign / Add Content Item To ListPart Orchard Core Programmatically

我有一个 API 来创建 contentItem,但我如何将它分配给其他内容的 ListPart? 例如,我有一个音频专辑,其中包含一个内容类型为音频项目的 ListPart。

目前我正在使用内容管理器

 var contentItem = await _contentManager.NewAsync("AudioItem");

 await _contentManager.CreateAsync(contentItem, VersionOptions.DraftRequired);

 contentItem.DisplayText = name;

 await _contentManager.UpdateAsync(contentItem);

谢谢

您需要使用 WeldAlter 扩展来修改内容项。

contentItem.Weld<ContainedPart>();
contentItem.Alter<ContainedPart>(x => x.ListContentItemId  = "id-of-parent");

Weld 将添加 ContainedPartAlter 将更改它的值。