0

次のようにコンテンツ アイテムのインスタンスを作成しました。

ContentItem ci = _orchardServices.ContentManager.New("ContentTypeA");
_orchardServices.ContentManager.Create(ci, VersionOptions.Published);
ci.As<SomeContentPart>().SomeAttr = value;
...
_orchardServices.ContentManager.Publish(ci);

別の方法では、コンテンツタイプを変更する必要があり、次のことを試しましたが成功しませんでした:

ci.TypeDefinition = _contentDefinitionManager.GetTypeDefinition("ContentTypeB");
ci.ContentType = "ContentTypeB";

コンテンツ アイテムを再度クエリすると、そのコンテンツ タイプは「ContentTypeB」ではなく「ContentTypeA」のままです。

何か案は?

4

1 に答える 1

1

コンテンツ アイテムが作成されると、そのコンテンツ タイプを変更することはできません。理論的には、データベースにハッキングして機能させることもできますが、新しいアイテムを作成してデータをコピーするだけのほうが、はるかに良い時間の使い方のように思えます。

于 2013-05-14T18:59:40.247 に答える