Nop4.40.3: differenze tra le versioni

Da Webmobili Wiki.
Riga 29: Riga 29:
* Dalle proprietà del progetto ''Nop.Web'' andare sulla tab ''Build'', selezionare la configurazione ''Release'' e aggiungere il simbolo condizionale '''OFFICIAL'''
* Dalle proprietà del progetto ''Nop.Web'' andare sulla tab ''Build'', selezionare la configurazione ''Release'' e aggiungere il simbolo condizionale '''OFFICIAL'''
* Configuriamo l'applicazione in modo che cambi file di configurazione a seconda della Solution Configuration selezionata
* Configuriamo l'applicazione in modo che cambi file di configurazione a seconda della Solution Configuration selezionata
** <span style="color:red;font-weight:bold;">Libraries\Nop.Data\NopDataSettingsDefaults.cs</span> cambiare l'assegnamento di '''FilePath''' con quanto segue <syntaxhighlight lang="c#">        public static string FilePath =>
** <code style="color:red;font-weight:bold;">Libraries\Nop.Data\NopDataSettingsDefaults.cs</code> cambiare l'assegnamento di '''FilePath''' con quanto segue <syntaxhighlight lang="c#">        public static string FilePath =>
#if DEBUG
#if DEBUG
             "~/App_Data/dataSettings.development.json";
             "~/App_Data/dataSettings.development.json";
Riga 40: Riga 40:


#endif</syntaxhighlight>
#endif</syntaxhighlight>
** <span style="color:red;font-weight:bold;">Libraries\Nop.Services\Configuration\NopConfigurationDefaults.cs</span> cambiare l'assegnamento di '''AppSettingsFilePath''' con quanto segue <syntaxhighlight lang="c#">        public static string AppSettingsFilePath =>
** <code style="color:red;font-weight:bold;">Libraries\Nop.Services\Configuration\NopConfigurationDefaults.cs</code> cambiare l'assegnamento di '''AppSettingsFilePath''' con quanto segue <syntaxhighlight lang="c#">        public static string AppSettingsFilePath =>
#if DEBUG
#if DEBUG
             "App_Data/appsettings.development.json";
             "App_Data/appsettings.development.json";

Versione delle 15:56, 1 giu 2021

Installare Nop 4.40.3

In questa guida saranno evidenziati in rosso tutti i file del core di Nop che verranno toccati.

Operazioni sul DB

  • Creare un dump del database di produzione (Nop 4.3)
  • Ripristinarlo
  • Per ripristinare l'utente wmuser è necessario disassociarlo dal catalogo fulltext
  • Da SQL Management Aprire Storage -> Fulltext Catalogs -> nopCommerceFullTextCatalog, nella tab General impostare come Owner => dbo
  • Eliminare l'utente wmuser
  • Ri-mappare l'utente wmuser sul database nuovo
  • Aprire di nuovo Storage -> Fulltext Catalogs -> nopCommerceFullTextCatalog, nella tab General inserire come Owner => wmuser
  • Aprire di nuovo Storage -> Fulltext Catalogs -> nopCommerceFullTextCatalog, nella tab Tables/Views, pannello Eligible columns impostare italian per tutti i campi

Configurazione della Solution

  • Aggiornare i file Presentation\Nop.Web\App_Data\dataSettings.json e Presentation\Nop.Web\App_Data\appsettings.json
  • Copiare i plugin di terze parti nella cartella Plugins\Nop.Plugin.Compiled
  • Aggiungere il seguente codice nei build events => post build event progetto Nop.Web
    xcopy /y /E $(SolutionDir)Plugins\Nop.Plugin.Compiled $(SolutionDir)Presentation\Nop.Web\Plugins
    per copiare i plugin compilati (7spikes & co) nel corretto folder durante il build.
  • Creare dal Configuration Manager una nuova Solution Configuration chiamata ReleaseTest
  • Tasto destro sul web.config e cliccare su Add Configs Transform per creare i web.Release.config e web.ReleaseTest.config
    • Nel web.config aggiungere la variabile d'ambiente ASPNETCORE_ENVIRONMENT con valore Development sotto la sezione aspNetCore
      <environmentVariables>
        <environmentVariable name="ASPNETCORE_ENVIRONMENT" value="Development" />
      </environmentVariables>
      
    • Nel web.ReleaseTest.config mettere il valore Testing
      <environmentVariables>
        <environmentVariable name="ASPNETCORE_ENVIRONMENT" value="Testing" xdt:Transform="SetAttributes" xdt:Locator="Match(name)" />
      </environmentVariables>
      
    • nel web.Release.config mettere il valore Production
      <environmentVariables>
        <environmentVariable name="ASPNETCORE_ENVIRONMENT" value="Production" xdt:Transform="SetAttributes" xdt:Locator="Match(name)" />
      </environmentVariables>
      
  • Dalle proprietà del progetto Nop.Web andare sulla tab Build, selezionare la configurazione Release e aggiungere il simbolo condizionale OFFICIAL
  • Configuriamo l'applicazione in modo che cambi file di configurazione a seconda della Solution Configuration selezionata
    • Libraries\Nop.Data\NopDataSettingsDefaults.cs cambiare l'assegnamento di FilePath con quanto segue
              public static string FilePath =>
      #if DEBUG
                  "~/App_Data/dataSettings.development.json";
      
      #elif !OFFICIAL
                  "~/App_Data/dataSettings.testing.json";
      
      #else
                  "~/App_Data/dataSettings.json";
      
      #endif
      
    • Libraries\Nop.Services\Configuration\NopConfigurationDefaults.cs cambiare l'assegnamento di AppSettingsFilePath con quanto segue
              public static string AppSettingsFilePath =>
      #if DEBUG
                  "App_Data/appsettings.development.json";
      
      #elif !OFFICIAL
                  "App_Data/appsettings.testing.json";
      
      #else
                  "App_Data/appsettings.json";
      
      #endif
      
  • Addare alla Solution (cartella Libraries) i progetti GenericUtilites, WM4Search, WM_Core e USO
  • Runnando la Solution dovrebbe partire con tutti i plugin disabilitati. Una volta entrati in admin è possibile vederli dall'elenco e installarli.
  • Aggiornare tutti i pacchetti nuGet della Solution che abbiano un update minor (dalla seconda cifra in poi)