SW design week SW design week
This week up to 80% off on software design courses. More info

Lesson 32 - E-shop in ASP.NET Core MVC - Editing Orders

In the previous lesson, E-shop in ASP.NET Core MVC - Generating PDF invoices, we added a possibility to download a PDF invoice to our ASP.NET Core MVC e-shop administration. The last feature we're going to add to this section is the ability to edit the orders.

Order editing

This functionality allows the e-shop administrators to make changes to already completed orders. Let's see how such a form might look like.

Order change template in ASP.NET e-shop

The form looks like an invoice in which we should be able to change:

  • Payment Details (Issue Date, Due Date) - Changing the invoice details is simple, it's a form of two fields.
  • Customer details (name, address, ...) - But as far as customer data is concerned, this change is not easy since the data is in multiple tables and we'd prefer to use the already available person administration. Therefore, we're going to show how to leave it to another form displayed using a jQuery UI dialog.
  • Ordered Products - As for changing the ordered products, this is probably the most complex part. Here we're going to need to write some code in JavaScript.

We'll create an AJAX request performing the requested changes in background so that the entire page does not have to be reloaded with each modification. We'll do this by dividing the page into several partial views, which we'll be able to update separately. Of course we're going to use as much of our current types, methods, and forms as possible.

The overall appearance of the page is quite similar to the invoice, so I will not provide the entire code here, but I will focus on the individual editable parts.

Rendering the form

Let's start with rendering the form.

ViewModel

Because the editing page will be similar to the invoice, so far we can inherit our new OrderEditViewModel


 

...End of the preview...

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:

Editing completed orders by e-shop administrators in ASP.NET Core MVC. We'll divide the view into multiple forms and update data in background using AJAX.

Limited offer: Learn all knowledge and save money

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

Buy just this article

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

To access the article, you need 30 points
Currently, you have 0 points
You gain 30 points for adding an article to the site, or for $2.70

Before buying this article, you have to buy the previous one

Buying this article gives you unlimited access to it forever. You will learn some more and help us keep giving our site maintenance which helps you and others get better futures. It's a win-win.

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

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.

You can get points immediately using:

Credit card SMS Wire transfer
Credit card SMS Wire transfer

 

Activities (2)