Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/269.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何更新EngineContext.Current.Resolve<;StoreInformationSettings>;()升级到nopcommerce 3.9后支持响应设计_C#_Nopcommerce_Nopcommerce 3.90 - Fatal编程技术网

C# 如何更新EngineContext.Current.Resolve<;StoreInformationSettings>;()升级到nopcommerce 3.9后支持响应设计

C# 如何更新EngineContext.Current.Resolve<;StoreInformationSettings>;()升级到nopcommerce 3.9后支持响应设计,c#,nopcommerce,nopcommerce-3.90,C#,Nopcommerce,Nopcommerce 3.90,我们尝试将现有的nopcommerce应用程序从3.40升级到3.90 遵循中的所有步骤 在自定义主题和自定义插件的所有web.config文件中,MVC版本从System.web.MVC,version=5.0.0.0,更新为System.web.MVC,version=5.2.3.0 现在我们在自定义主题中出现以下错误 编译器错误消息:CS1061:“Nop.Core.Domain.StoreInformationSettings”不包含“ResponsiveDesignSupported”

我们尝试将现有的nopcommerce应用程序从3.40升级到3.90

遵循中的所有步骤

在自定义主题和自定义插件的所有web.config文件中,MVC版本从
System.web.MVC,version=5.0.0.0,
更新为
System.web.MVC,version=5.2.3.0

现在我们在自定义主题中出现以下错误

编译器错误消息:CS1061:“Nop.Core.Domain.StoreInformationSettings”不包含“ResponsiveDesignSupported”的定义,并且找不到接受“Nop.Core.Domain.StoreInformationSettings”类型的第一个参数的扩展方法“ResponsiveDesignSupported”(是否缺少using指令或程序集引用?)

StoreInformationSettings中似乎没有ResponsiveDesignSupported属性

nopcommerce 3.90中是否有方法获得
ResponsiveDesignSupported
设置

下面是一些代码

@model TopMenuModel
@using Nop.Core.Domain
@using Nop.Core.Infrastructure
@using Nop.Web.Models.Catalog;
@{
    var isRtl = this.ShouldUseRtlTheme();
    var supportResponsive = EngineContext.Current.Resolve<StoreInformationSettings>().ResponsiveDesignSupported;
}
@helper RenderCategoryLine(CategorySimpleModel category, int level, bool responsiveMobileMenu)
{
    <li>
        <a href="@Url.RouteUrl("Category", new { SeName = category.SeName    })">@category.Name
        @if (category.NumberOfProducts.HasValue)
        {
            <text> </text>@T("Categories.TotalProducts", category.NumberOfProducts.Value)
        }
        </a>
        @{
            var levelClass = "";
            if (level == 0)
            {
                levelClass = "firstLevel";
                <div class="top-menu-triangle"></div>
            }
            if (category.SubCategories.Count > 0)
            {
                if (responsiveMobileMenu)
                {
                    <span class="expand">&nbsp;</span>
                }
                <div class="sublist @levelClass">
                <ul>
                    @foreach (var subCategory in  category.SubCategories)
                    {
                        @RenderCategoryLine(subCategory, level + 1, responsiveMobileMenu)
                    }
                </ul>
                </div>
            }
        }
    </li>
}

<ul class="top-menu">
    @Html.Widget("header_menu_before")
    @if (Model.Categories.Count > 0)
    {
        <li><a href="@Url.RouteUrl("HomePage")"><i class="fa fa-home fa-lg"> </i></a></li>
        foreach (var category in Model.Categories)
        {
            @RenderCategoryLine(category, 0, false)
        }
    }
    else
    {
        //no categories to display? in this case let's diplay some default menu items (should we?)
        <li><a href="@Url.RouteUrl("HomePage")">@T("HomePage")</a></li>
        if (Model.RecentlyAddedProductsEnabled)
        {
            <li><a href="@Url.RouteUrl("RecentlyAddedProducts")">@T("Products.NewProducts")</a>
            </li>
        }
        <li><a href="@Url.RouteUrl("ProductSearch")">@T("Search")</a>         </li>
        <li><a href="@Url.RouteUrl("CustomerInfo")">@T("Account.MyAccount")</a></li>
        if (Model.BlogEnabled)
        {
            <li><a href="@Url.RouteUrl("Blog")">@T("Blog")</a></li>
        }
        if (Model.ForumEnabled)
        {
            <li><a href="@Url.RouteUrl("Boards")">@T("Forum.Forums")    </a></li>
        }
        <li><a href="@Url.RouteUrl("ContactUs")">@T("ContactUs")</a></li>
    }
    @Html.Widget("header_menu_after")
</ul>

<script type="text/javascript">
    $('li', '.top-menu').on('mouseenter', function () {
        $('a', $(this)).first().addClass('hover');
        if (!$(this).parent().hasClass('top-menu')) {
            var width = $(this).innerWidth();
            $('.sublist', $(this)).first().css('@(isRtl ? "right" : "left")', width + 15);
        }
        $('.sublist', $(this)).first().addClass('active');
        $('.top-menu-triangle', $(this)).addClass('active');
    });

    $('li', '.top-menu').on('mouseleave', function () {
        $('a', $(this)).first().removeClass('hover');
        $('.sublist', $(this)).first().removeClass('active');
        $('.top-menu-triangle', $(this)).removeClass('active');
    });

    </script>

@if (supportResponsive)
{
    <div id="mob-menu-button">
        <a href="">
            <span class="icon"><span class="line"></span><span class="line"></span><span class="line"></span></span>
            @{
                var responsiveMenuTitle = Model.Categories.Count > 0 ? T("Categories") : T("Menu");
            }
            <span>@responsiveMenuTitle</span>
        </a>
    </div>
    <ul class="mob-top-menu">
        @Html.Widget("mob_header_menu_before")
        @if (Model.Categories.Count > 0)
        {
            foreach (var category in Model.Categories)
            {
                @RenderCategoryLine(category, 0, true)
            }
        }
        else
        {
            //no categories to display? in this case let's diplay some default menu items (should we?)
            <li><a href="@Url.RouteUrl("HomePage")">@T("HomePage")</a></li>
            if (Model.RecentlyAddedProductsEnabled)
            {
                <li>
                    <a href="@Url.RouteUrl("RecentlyAddedProducts")">@T("Products.NewProducts")</a>
                </li>
            }
            <li><a href="@Url.RouteUrl("ProductSearch")">@T("Search")</a> </li>
            <li><a href="@Url.RouteUrl("CustomerInfo")">@T("Account.MyAccount")</a></li>
            if (Model.BlogEnabled)
            {
                <li><a href="@Url.RouteUrl("Blog")">@T("Blog")</a></li>
            }
            if (Model.ForumEnabled)
            {
                <li><a href="@Url.RouteUrl("Boards")">@T("Forum.Forums")    </a></li>
            }
            <li><a href="@Url.RouteUrl("ContactUs")">@T("ContactUs")</a></li>
        }
        @Html.Widget("mob_header_menu_after")
    </ul>
    <script type="text/javascript">
        $('a', $('#mob-menu-button')).toggle(function() {
                $('.mob-top-menu').addClass('show');
            },
            function() {
                $('.mob-top-menu').removeClass('show');
            }
        );

        $(function($) {
            $('.mob-top-menu .expand').click(function() {
                var parent = $(this).parent();
                if (parent.hasClass('active')) {
                    $(".sublist:first", parent).hide(300);
                    parent.removeClass('active');
                } else {
                    $(".sublist:first", parent).show(300);
                    parent.addClass('active');
                }
            });
        });
    </script>
}
@model TopMenuModel
@使用Nop.Core.Domain
@使用Nop.Core.Infrastructure
@使用Nop.Web.Models.Catalog;
@{
var isRtl=this.ShouldUseRtlTheme();
var supportResponsive=EngineContext.Current.Resolve().ResponsiveDesignSupported;
}
@helper RenderCategoryLine(类别SimpleModel类别、int级别、bool响应MobileMou)
{
  • @{ var levelClass=“”; 如果(级别==0) { levelClass=“firstLevel”; } 如果(category.SubCategories.Count>0) { if(响应移动单元) { }
      @foreach(类别中的var子类别。子类别) { @RenderCategoryLine(子类别,级别+1,响应移动单元) }
    } }
  • }
      @小部件(“标题菜单之前”) @如果(Model.Categories.Count>0) {
    • foreach(Model.Categories中的var类别) { @RenderCategoryLine(类别,0,false) } } 其他的 { //没有要显示的类别?在这种情况下,让我们显示一些默认菜单项(我们应该吗?)
    • if(最近添加的产品型号) {
    • }
    • if(Model.blogdenabled) {
    • } if(型号ForumEnabled) {
    • }
    • } @小部件(“标题菜单后”)
    $('li','.top menu')。在('mouseenter',函数(){ $('a',$(this)).first().addClass('hover'); if(!$(this.parent().hasClass('top-menu')){ var width=$(this.innerWidth(); $('.sublist',$(this)).first().css('@(isRtl?“right”:“left”)',宽度+15); } $('.sublist',$(this)).first().addClass('active'); $('.top menu triangle',$(this)).addClass('active'); }); $('li','.top menu')。在('mouseleave',函数(){ $('a',$(this)).first().removeClass('hover'); $('.sublist',$(this)).first().removeClass('active'); $('.top menu triangle',$(this)).removeClass('active'); }); @如果(支持响应) {
      @小部件(“移动标题菜单之前”) @如果(Model.Categories.Count>0) { foreach(Model.Categories中的var类别) { @RenderCategoryLine(类别,0,真) } } 其他的 { //没有要显示的类别?在这种情况下,让我们显示一些默认菜单项(我们应该吗?)
    • if(最近添加的产品型号) {
    • }
    • if(Model.blogdenabled) {
    • } if(型号ForumEnabled) {
    • }
    • } @小部件(“移动标题菜单后”)
    $('a',$('mob menu button'))。切换(函数(){ $('.mob顶部菜单').addClass('show'); }, 函数(){ $('.mob顶部菜单').removeClass('show'); } ); $(函数($){ $('.mob顶部菜单.expand')。单击(函数(){ var parent=$(this.parent(); if(parent.hasClass('active')){ $(“.sublist:first”,parent).hide(300); parent.removeClass('active'); }否则{ $(“.sublist:first”,parent).show(300); parent.addClass('active'); } }); }); }
    响应式设计支持选项已从nopCommerce 3.6版起删除


    如果您从任何供应商处购买了自定义主题,请获取您的nopCommerce 3.9版本的主题。

    由于版本3.70,ResponsiveDesignSupported设置不再可用,并且nop支持即时响应主题,如果您想在主题中关闭或打开响应设计,它应该在主题本身内通过jquery、css完成。

    您可以访问哪些其他属性?你能展示一些代码吗?@DavidG我已经添加了codehm我想这个选项已经被删除了,因为现在没有办法禁用响应。这很有道理,因为一切都应该是有反应的。@DavidG谢谢你的帮助。我将删除自定义主题中所有responsiveSupported检查。