Порядок поиска местоположения ViewEngine в порядке, но отображает представление из неправильной папки
У меня есть плагин nopCommerce, который имеет пользовательский механизм просмотра следующим образом:
CustomViewEngine : ThemeableRazorViewEngine
Плагин имеет вид файла под названием CategoryNavigation.cshtml
который также существует в Views\Catalog\CategoryNavigation.cshtml
Теперь, если я удаляю файлы, ошибки, о которых сообщают механизмы представления, следующие:
Как вы можете видеть, первым искомым местоположением является папка плагина.
Так что, если файл существует в папке плагина, но не в Views\Catalog\
папка затем отображается из папки плагина без каких-либо ошибок. Но если файл существует как в папке плагина, так и в Views\Catalog\
тогда вид с Views\Catalog\
оказано. Но Views\Catalog\
Это далеко вниз в местах поиска (см. изображение выше). Есть идеи, что может быть причиной проблемы?
nopCommerce 3.70
1 ответ
Мне нужно представление из плагина, чтобы сделать вид не по умолчанию
Если вы хотите отобразить страницу просмотра из вашего плагина, вы должны использовать механизм просмотра плагина, который вы уже сделали. Но убедитесь, что вы также определите ViewLocationFormats
как после.
public class CustomViewEngine :ThemeableRazorViewEngine
{
public CustomViewEngine ()
{
ViewLocationFormats =
new[]
{
"~/Plugins/Feed.Instagram/Views/Catalog/{0}.cshtml"
};
}
}
Здесь создайте папку (каталог) в вашей папке просмотра и вставьтеcategoryNavigation.cshtml
внутрь.
Он будет отображать страницу просмотра из вашего плагина вместо по умолчанию.
Надеюсь, это поможет вам!
За дополнительной информацией обращайтесь к этому: Способы отображения представлений в ваших плагинах nopCommerce.