Get up to 40 % extra points for free! More info
Only this week sale up to 80 % on e-learning courses of Java
discount 40

Lesson 34 - E-shop in ASP.NET Core MVC - Finishing the E-shop

In the previous lesson, E-shop in ASP.NET Core MVC - Editing Orders 2 - Customer, we allowed the customer details of an order to be edited. In today's ASP.NET Core tutorial, we're going to continue with managing order products and complete our e-shop :)

Product Management

We kept probably the most challenging part of order administration for the end - product management. In this section, the administrator will be able to change the quantity of individual products, remove them from the order, or add others. As before, we'll try to make the most of the code we have already written. The corresponding part of the form will look like this:

E-shop order product administration in ASP.NET MVC

Before We Start...

In our view, we're also going to use the FinalPrice property of the order. However, its value must be recalculated every time the order is changed and not just when the order is completed as before. Therefore, I recommend to perform the calculation somewhere at the repository level, so that we won't forget to recalculate it somewhere. For example, we could rewrite the Update() method in EOrderRepository:

public override void Update(EOrder entity)
    var setting = accountingSettingRepository.FindSettingByDate(entity.Issued ?? DateTime.UtcNow);
    if (setting != null)
        entity.FinalPrice = entity.ProductEOrders.Sum(x => x.Quantity * x.Product.Price);
        entity.FinalPrice = (int)Math.Round((double)entity.FinalPrice * (setting.Vat / 100.0 + 1));

ViewModel Edit

In order to allow the administrator to add any product to the order, we need to pass a list of products to the view. Let's expand OrderEditViewModel:


...End of the preview...
Continue further

You will gain knowledge worth hundreds of thousands for a few crowns

You've come here and that's great! We believe that the first lessons showed you something new and useful
Do you want to continue the course? Go to the premium section.

Limited offer: Learn all knowledge and save money

Buy lessons and exercise submitting one by one 990 points
Buy all currently available lessons with exercise submitting and other features for an exclusive price 842 points ($75.78)
Currently, you have 0 points
By buying this exclusive package, you'll have access to all 34 lessons in this course including exercise submitting while saving $13.32. This offer is limited for the first lessons only with an additional exclusive 15% discount.
You gain 842 points for adding an article to the site, or for $89.10 $75.78

Warning, by buying just this lesson you'll lose the limited 15% discount for the package of all the lessons.

Buy only the lesson 30 points
Currently, you have 0 points
You gain 30 points for adding an article to the site, or for $2.70

This article is licensed: Premium no-reselling II, by buying this article, you agree with the terms of use.

Commercial article (licence no-reselling)

Commercial article (licence no-reselling)

This article is based on many years of experience in the IT field, and describes how to develop a professional commercial product or parts, that can be directly used to generate profit or to get as a gate into the industry.

This knowledge is only can only be used properly by the members of our community who are working their way up to become IT professionals. Therefore, this knowledge is only available in exchange for points. You can use the source code from this article for one commercial project. However, you will not be able to resell it. Simply put, you can't buy our article once and then sell our code multiple times. If you need to use this code a bit more extensively, we are ready to discuss Commercial licence options with you. You can find more info on this in the following article Licence.

Are you ready to become a professional? All you have to do is click here!.

Article description

Requested article covers this content:

We'll finish the order editing by e-shop administrators in ASP.NET Core MVC. We'll manage order products and update data in background using AJAX.

You gain points by supporting our network. This is done by sending a helpful amount of money to support the site, or by creating content for the network.

Article has been written for you by Martin Petrovaj
Activities (4)