Вы можете просмотреть все доступные альтернативы для формы, включив функцию «Трассировка формы» и просмотрев список альтернатив, например. http://devhammer.net/blog/Customize-Orchard-CMS-with-Designer-Tools
Например, на основном элементе контента главной страницы я получаю из коробки:
~/Themes/MyTheme/Views/Content.cshtml
~/Themes/MyTheme/Views/Content-url-homepage.cshtml
~/Themes/MyTheme/Views/Content.Detail.cshtml
~/Themes/MyTheme/Views/Content-Page.cshtml
~/Themes/MyTheme/Views/Content-10.cshtml
~/Themes/MyTheme/Views/Content-Page.Detail.cshtml
~/Themes/MyTheme/Views/Content-10.Detail.cshtml
ваших вариантов, чтобы добавить или расширить существующие альтернативные заводы, такие как Orchard.DesignerTools.Services.UrlAlternatesFactory например,
// appends [ShapeType]__url__[Url]_[DisplayType] alternates
context.ShapeMetadata.Alternates = _urlAlternates.Value.Select(url =>
context.ShapeMetadata.Type + "__url__" + url + "_" +
context.ShapeMetadata.DisplayType)
.Union(context.ShapeMetadata.Alternates)
.ToList();
Это даст вам альтернативный ~/Темы/MyTheme/Просмотров/Content-url-homepage.Detail.cshtml
или использовать один из существующих заместителей, таких как
~/Themes/MyTheme/Views/Content-10.Detail.cshtml
Какой бы он ни был подойдет вашим целям (для меня использование идентификатора не так чисто, как с помощью URL)
Я также попытался настроить приоритет функции «Url Alt ernates, так что альтернативы url добавляются ко всем другим существующим альтернативам, как это было указано в коде, но, насколько я вижу, это не работает или не поддерживается.
Почему вы все равно хотите сделать это? Содержимое, отображаемое на любом URL-адресе, будет отображаться либо в режиме 'detail', либо в режиме' summary', оно не может быть одинаковым для одного и того же URL-адреса. –