Asp.net mvc 4 Orchard CMS:如何显示标签的摘要和详细信息显示类型的不同视图\u ShowTags shape?

Asp.net mvc 4 Orchard CMS:如何显示标签的摘要和详细信息显示类型的不同视图\u ShowTags shape?,asp.net-mvc-4,orchardcms,Asp.net Mvc 4,Orchardcms,我需要为TagsPart的summary和detail显示类型显示不同的视图,但它只包含一个shape Tags\u ShowTags,用于两个视图 protected override DriverResult Display(TagsPart part, string displayType, dynamic shapeHelper) { return ContentShape("Parts_Tags_ShowTags", () => shapeHelper.P

我需要为TagsPart的summary和detail显示类型显示不同的视图,但它只包含一个shape Tags\u ShowTags,用于两个视图

protected override DriverResult Display(TagsPart part, string displayType, dynamic shapeHelper) {
    return ContentShape("Parts_Tags_ShowTags",
        () => shapeHelper.Parts_Tags_ShowTags(Tags: part.CurrentTags.Select(x => new ShowTagViewModel { TagName = x })));
}
有没有办法为形状标签创建不同的视图?这样地: Tags.ShowTags-MyContentType.Detail.cshtml
Tags.ShowTags MyContentType.Summary.cshtml

是。您是否尝试过形状跟踪工具,以找到该形状()的可用替代项?您还可以看一看-Parts\u Tags\u ShowTags作为示例来解释备选方案

编辑:

我根据以下技巧设法增加了可用备选方案的数量(无需在placement.info文件中明确指定它们即可使用):

在我自己的模块中,我放置了这个“PartContentTypeAlternateFactory.cs”:


这给了我更多的选择,“开箱即用”。它们甚至出现在形状跟踪工具中,人们可以使用它创建适当的cshtml文件。

是的。您是否尝试过形状跟踪工具,以找到该形状()的可用替代项?您还可以看一看-Parts\u Tags\u ShowTags作为示例来解释备选方案

编辑:

我根据以下技巧设法增加了可用备选方案的数量(无需在placement.info文件中明确指定它们即可使用):

在我自己的模块中,我放置了这个“PartContentTypeAlternateFactory.cs”:


这给了我更多的选择,“开箱即用”。它们甚至出现在形状跟踪工具中,可以使用它来创建适当的cshtml文件。

Marco Serralheiro的使用Atlernates的技巧允许在不创建额外形状的情况下使用不同的视图来显示摘要和详细信息。请参见以下示例:

<Match ContentType="MyContentType">
  <Match DisplayType="Summary">
    <Place Parts_Tags_ShowTags="Content:4;Alternate=Parts_Tags_ShowTag_MyContentType_Summary"/>
  </Match>
  <Match DisplayType="Detail">
    <Place Parts_Tags_ShowTags="Content:4;Alternate=Parts_Tags_ShowTag_MyContentType_Detail"/>
  </Match>
</Match>

Marco Serralheiro关于使用Atlernates的提示允许在不创建额外形状的情况下使用不同的视图来显示摘要和细节类型。请参见以下示例:

<Match ContentType="MyContentType">
  <Match DisplayType="Summary">
    <Place Parts_Tags_ShowTags="Content:4;Alternate=Parts_Tags_ShowTag_MyContentType_Summary"/>
  </Match>
  <Match DisplayType="Detail">
    <Place Parts_Tags_ShowTags="Content:4;Alternate=Parts_Tags_ShowTag_MyContentType_Detail"/>
  </Match>
</Match>

这应该是首选答案。@BertrandLeRoy,为什么这种方法不适用于字段?我正在寻找一种在摘要和详细信息模式下应用备用字段模板的方法。你怎么会认为它不适用?来自零件的形状没有什么特别之处。这应该是首选答案。@BertrandLeRoy,为什么这种方法不适用于字段?我正在寻找一种在摘要和详细信息模式下应用备用字段模板的方法。你怎么会认为它不适用?来自零件的形状没有什么特别之处。
/Views/Parts.Tags.ShowTag.MyContentType.Summary.cshtm
/Views/Parts.Tags.ShowTag.MyContentType.Detail.cshtml