AspDotNetStorefront moves to ASP.NET MVC for the storefront presentation.
AspDotNetStorefront 10.0.0 - 10.0.23 introduces, for the first time, a front end framework that uses ASP.NET MVC patterns. For now, the administrative console will continue to use the traditional ASP.NET application framework that is based on Web Forms.
Benefits of ASP.NET MVC for storefront
Traditionally, a significant majority of AspDotNetStorefront users build custom code that journeys beyond cosmetic changes. These custom modifications impact the business logic, the database schema and the UI. The decision to move to ASP.NET MVC is premised on the benefits it brings to our developer community, now that the presentation layer (view) is separated out from the business logic.
Far more developers are familiar with MVC coding patterns - including PHP developers. ASP.NET MVC is similar to other MVC-pattern frameworks, like Ruby on Rails, Django, and Zend.
**Unlike other ecommerce 'platforms' which try to be all things to all merchants out-of-box, AspDotNetStorefront is committed to growing the community of developers who use our software as a sophisticated framework - a great foundation on which to build a solution for serious online sellers.**
Principles of the transition to MVC
Dependency Injection ([Autofac]) is used to inject services into the AspDotNetStorefront MVC controllers. From v10 onward, AspDotNetStorefront will consistently use Dependency Injection throughout the codebase. This allows for Rapid Application Development - developers using the AspDotNetStorefront framework will use built-in services very easily to compose new functionality.
Specifics of AspDotNetStorefront advantages over earlier versions
MVC routing has allowed us to offer complete freedom over the make-up of the storefront URLs. This is configurable, such that legacy routing can be persisted if required.
It is completely easy to implement third party forms with AspDotNetStorefront MVC - widgets provided by companies such as Constant Contact can now be installed with minimal effort.
**Separation of store-centric UI**
With AspDotNetStorefront MVC, each "skin" is referred to using a name (as opposed to a numbering system). All pages (which are MVC views and partial views) of the site can now be run from inside a single skin folder if needed, allowing users to override the layout of those pages per skin/store. Placing views in the skin also provides a good way to keep track of customized view pages and will make upgrades quicker and easier.
**New XML Engine**
We have rebuilt the XMLPackage engine, which renders dynamic pages, to dramatically increase the efficiency and speed. However, in the interests of ease of upgrade, legacy XMLPackages remain fully compatible.
SQL Server requirements
Although AspDotNetStorefront 10.0.0 - 10.0.23 will run on SQL Server 2008 and above, PCI 3.1 requirements and our certification against those standards require SQL Server 2014 (also Windows 2012 R2).
AspDotNetStorefront now fully integrates with the standard ASP.NET Identity framework. This allows developers to use the appropriate authentication and authorization schemes for their use case while ensuring they will be able to utilize the same identity information as the rest of the site.