1

Orchard は、名前が同じでモジュールが異なる複数のコンテンツ パーツをサポートしていますか?

例えば:

namespace MyNamespace
{
    public class PersonPart: ContentPart<PersonPartRecord>
    ...
}

namespace OtherNamespace
{
    public class PersonPart: ContentPart<PersonPartRecord>
    ...
}

コンテンツ パーツ用に生成されたテーブルは、次のような名前空間プレフィックスを介してパーツを完全に修飾しているようです。

Current_MyNamespace_PersonPartRecord

パーツがコンテンツ タイプにマップされると、通常は次のようになります。

ContentDefinitionManager.AlterTypeDefinition("Person", builder => builder
    .Creatable()
    .WithPart("CommonPart")
    .WithPart("PersonPart"));

パーツを解決するための名前空間を提供しません。

異なるモジュールで同じ名前の複数のコンテンツ パーツを許可するために欠落しているメカニズムはありますか? または、パーツの短い名前との名前の衝突がないことを常に確認する必要がありますか?

4

1 に答える 1

2

設計上、同じ名前のコンテンツ パーツを 1 つのコンテンツ タイプに複数回表示することはできません。

名前空間機能を追加するメリットがよくわかりません。付加価値は非常に小さいように見えますが、発生する可能性のある問題はかなりのものです (問題のあるリファクタリング、既存のパーツの面倒なオーバーライドなど)。

それらに別の名前を付けることを確認してください。

于 2015-03-25T16:38:48.857 に答える