0

我有一个 nopCommerce 插件,它有一个自定义视图引擎,如下所示:

CustomViewEngine : ThemeableRazorViewEngine

该插件有一个名为的视图文件CategoryNavigation.cshtml,它也存在于Views\Catalog\CategoryNavigation.cshtml

现在,如果我删除文件,视图引擎报告的错误如下: 在此处输入图像描述

如您所见,第一个搜索的位置是插件文件夹。

因此,如果文件存在于插件文件夹中但不存在于文件Views\Catalog\夹中,则它会从插件文件夹中显示而不会出现任何错误。但是,如果该文件既存在于插件文件夹中,又存在于其中,则呈现Views\Catalog\来自的视图。Views\Catalog\但是Views\Catalog\在搜索位置上却很差(见上图)。知道可能导致问题的原因吗?

nopCommerce 3.70

4

1 回答 1

1

我需要插件中的视图来呈现不是默认视图

如果你想从你的插件中显示视图页面,你应该使用你已经完成的插件视图引擎。但请确保您还定义ViewLocationFormats如下。

 public class CustomViewEngine :ThemeableRazorViewEngine 
    {         
        public CustomViewEngine ()
        {    
            ViewLocationFormats =
                new[]
                {                               
                     "~/Plugins/Feed.Instagram/Views/Catalog/{0}.cshtml"
                };
        }  
    }

在您的视图文件夹中创建一个文件夹(目录)并将<code>categoryNavigation.csh‌​tml粘贴到其中。

它将显示来自您的插件的视图页面,而不是默认页面。

希望这对你有帮助!

有关更多信息,请参阅:在您的 nopCommerce 插件中显示视图的方法

于 2016-08-19T13:51:58.540 回答