[Pet Shop Reloaded] The Application
The Pet Shop Reloaded is a sample e-commerce web application. Users will be able to browse a nice set of animals by category, add them to their cart or wish list, and finish their purchase by log in or register to the application.
Users first arrive to the home page where are displayed some random animals to discover.
On the top of the page users can perform actions like:
- See their cart.
- Log in/Log off (if connected).
- Wish list (if connected).
- Account information (if connected).
- Search animals by keywords.
Users can browse animals by category.
When selecting an animal, are displayed all the different kinds of this animal with some details like the quantity remaining and the price.
Users can then add the desired animal to their cart or to their wish list (if logged in).
The cart page contains the list of animals to purchase by quantity.
When the user checks out, he has to confirm his billing and shipping addresses, provide his payment and confirm his order.
If the user is logged in, he can add animals to his wish list and manage it.
Users can manage at any time their account information.
The SoftFluent Pet Shop Reloaded will be developed as a web solution using:
- .NET 4.5.
- C# 5.
- ASP .NET MVC 4.
- SQL Server 2008 R2 (the 2012 version can be used as well).
- Visual Studio 2012.
The CodeFluent version
The CodeFluent Entities PetShop version will use the CodeFluent build 61214.707.
We will build the CodeFluent Entities model using the CodeFluent Entities Designer. This means that all the aspects related to the model will be implemented within the CodeFluent Model Designer, like:
- Data validation and custom business rules.
- Custom data access methods (stored procedures).
- Custom and extra attributes.
- Instances (data used to fill the database, useful to start with an application containing data).
There will be 2 producers to generate the Business Object Model layer (BOM) and the Persistence layer:
- The BOM producer will generate our .NET/C# classes, these classes contain all the logic that we have defined in our model (Validation, Rules, CRUD methods, custom data access methods…).
- The SQL Server producer will produce (and execute) SQL scripts to generate or update our database. CodeFluent Entities provides a “SQL diff engine” smart enough to update our database schema without losing our data.
On the MVC application we will directly use the BOM to manipulate and bind our models.
The Entity Framework version
The Entity Framework PetShop application will be built with the Entity Framework version 5 provided out-of-the-box with Visual Studio 2012.
We will use the Model First approach to design our model and we are going to use the built in templates (.tt templates) to generate our .NET/C# classes.
For validation and custom rules we may need to do some extra work, this will be explained in a blog post dedicated to Validation and Rules.
The persistence layer will be generated using the SQL code generated by the Entity Framework.
We will use essentially LINQ queries to retrieve data and the generated model will be used directly on the MVC application.
On the next blog post we are going to show how to start with CodeFluent Entities and Entity Framework (installation) before starting using the model designers.
Remember that you can find all the blog posts related to the Pet Shop Reloaded by SoftFluent under the tag “Pet Shop Reloaded“. Stay tuned. 🙂
The SoftFluent Team