2017-07-28 9 views
0

既存のnopcommerceアプリケーションを3.40から3.90にアップグレードしようとしています。EngineContext.Current.Resolve <StoreInformationSettings>()を更新する方法nopcommerce 3.9へのアップグレード後のResponsiveDesignSupported

すべてのステップがhttp://docs.nopcommerce.com/display/en/Upgrading+nopCommerceに続きます。

カスタムテーマとカスタムプラグインのすべてのweb.configファイルMVCのバージョンは、System.Web.Mvc, Version=5.0.0.0,からSystem.Web.Mvc, Version=5.2.3.0に更新されています。

今度は私たちのカスタムテーマでfolowingエラーが発生しました。

コンパイラエラーメッセージ:CS1061:「Nop.Core.Domain.StoreInformationSettingsは」「ResponsiveDesignSupported」の定義なし拡張メソッドが含まれていない型「Nop.Core.Domainの最初の引数を受け入れる「ResponsiveDesignSupported」。 StoreInformationSettings 'が見つかりました(使用するディレクティブまたはアセンブリ参照がありません)

StoreInformationSettingsにはResponsiveDesignSupportedプロパティがないようです。

ResponsiveDesignSupportedを取得する方法はnopcommerce 3.90にありますか?

いくつかのコードの下に

@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> 
} 
+0

他にどのようなプロパティがありますか?いくつかのコードを表示できますか? – DavidG

+0

@DavidGコードを追加しました – Dairo

+2

ええと、このオプションは今や応答性を無効にする方法がないため削除されたと思います。すべてが敏感でなければならないので、本当に意味をなさない。 – DavidG

答えて

-2

オプションをサポート応答デザインは、以降nopCommerce 3.6から削除されます。

任意のベンダーからカスタムテーマを購入した場合は、nopCommerce 3.9バージョンのテーマを取得してください。

0

バージョン3.70以降、ResponsiveDesignSupportedの設定は使用できなくなりました.Nopは反応しやすいテーマをサポートしています。テーマの応答性のあるデザインをオフまたはオンにするには、jquery 、css。

関連する問題