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

根据设计,具有相同名称的内容部分不能在单个内容类型中多次出现。

我不太了解添加命名空间功能的好处。附加值似乎很小,但可能出现的潜在问题很大(有问题的重构、麻烦的现有部件覆盖等)。

只要确保以不同的方式命名它们就可以了。

于 2015-03-25T16:38:48.857 回答