Orchard CMS - ContentPart命名空间

时间:2015-03-24 18:25:08

标签: orchardcms orchardcms-1.8 orchard-modules

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"));

没有提供任何用于解析部件的命名空间。

我是否缺少允许在不同模块中使用相同名称的多个内容部分的机制,或者我是否始终需要确保该部件的短名称没有命名冲突?

1 个答案:

答案 0 :(得分:1)

具有相同名称的内容部分无法按设计在单个内容类型中多次出现。

我没有获得添加命名空间功能的好处。附加值看起来很小,但可能出现的问题很严重(有问题的重构,现有部件的覆盖问题等)。

请确保以不同的方式命名,并且你很好。