Upgrading to Virto Commerce on .NET 8¶
Virto Commerce on NET 8 (3.800+) introduces a significant technical update by transitioning the platform to .NET 8. This update focuses on enhancing performance and stability while maintaining backward compatibility. It involves updating the Target Framework to .NET 8 and integrating the latest LTS releases of third-party libraries. Importantly, no code refactoring or alterations to the API and internal structure have been made.
The release has undergone extensive testing, including unit, end-to-end, regression, and performance tests to ensure a seamless transition as well as for other stable releases.
.NET 8 Improvements¶
-
Enhanced performance: The upgrade to .NET 8 brings substantial improvements in performance, resulting in faster response times and optimized resource utilization. This ensures a smoother and more efficient e-commerce experience for both customers and administrators.
-
Improved stability: Stability is a cornerstone of this update. By leveraging the advancements in .NET 8, Virto Commerce offers enhanced system reliability and robustness. This translates to fewer disruptions, improved error handling, and increased overall system stability.
-
Optimized bulk operations: With the transition to .NET 8, bulk operations such as select, update, and delete are optimized for efficiency. This improvement is particularly beneficial for scenarios involving large datasets, providing a noticeable boost in processing speed and resource efficiency.
Known limitations and breaking changes¶
- Entity Framework Packages Update: To prevent "System.MissingMethodException: Method not found errors" when call MigrationBuilder.CreateIndex, it is essential to update Entity Framework packages from version 6 to version 8.
- Kestrel HTTPS Binding: The default HTTPS binding has been removed. Refer to Microsoft Learn for more details.
Update process¶
The process of updating to .NET 8 includes:
- Installing .NET 8. Follow the official installation guidelines to set up the environment for the upgrade.
- Updating Virto Commerce Platform and modules.
- Updating custom modules.
Update Virto Commerce Platform and modules¶
Utilize the vc-build Update command for an automated update. This method streamlines the update process, ensuring that all components are seamlessly transitioned to the new version.
If you use package.json file for automated deployment, change versions of the platform and Virto Commerce modules to 3.800.0+. Based on latest Stable 8 or Edge release strategy.
Download platform and modules updates to version 3.800+. This method provides more control over the update process, allowing for a step-by-step transition.
Update custom modules¶
If you develop a custom module, update can be required prior to update .NET dependencies.
Update Solution to .NET 8¶
Download and execute the vc-net8-update.ps1 Power Shell script in your solution folder. To enable execution of PowerShell scripts, set powershell script as trusted if required, by running this power shell command:
This script automates several tasks, including:
- Updating Target Framework to .NET 8 for every project.
- Updating project dependencies, including Microsoft NuGet dependencies to version 8.0.0 and VirtoCommerce NuGet dependency to version 3.800.0 and latest.
- Updating other third-party dependencies to save version that used by Virto Commerce Platform.
- Updating the module.manifest file to align with the changes in .NET 8.
Note
You can perfrom the above updates manually.
Build solution¶
- Build the solution and meticulously address any compilation errors and warnings if required. This step ensures that the solution is compatible with the updated framework.
- Verify Tests for Issues Perform a thorough verification of tests to identify and address any issues introduced by the update. This step guarantees that the updated solution maintains the expected functionality and performance.
Create module package¶
Generate a module package by running vc-build Compress
. This step finalizes the update process, creating a package that encapsulates the updated modules for deployment.
Run Virto Commerce on .NET 8¶
With the update process completed, you can now run and enjoy the enhanced capabilities of Virto Commerce on the .NET 8 platform. Explore the platform new features and optimizations to leverage its full potential for an efficient e-commerce solution.