Save up to 80 % on our C# e-learning courses. Only this week!
Get up to 50 % extra points for free! More info

Lesson 27 - E-shop in ASP.NET Core MVC - Contact, Articles, Routing

In the previous lesson, E-shop in ASP.NET Core MVC - Order Completion Wizard 3, we finished the implementation of purchasing in our e-shop which makes the client part of the course finished. Before we start the shorter part of the ASP.NET e-shop, which allows administrators to manage orders, we're going to program a few simple features.


After clicking on the "Contact" item in the menu, a form should be displayed (see the picture), which will allow the customer to send an email to us. Creating such a form shouldn't be a problem for you, neither sending an email as we have sent a confirmation email in the previous lesson already, so we have everything ready. All we need to do is to prepare a new ViewModel and edit the HomeController:


The viewmodel code will be as follows:

public class ContactViewModel
    [DisplayName("Your email")]
    [DataType(DataType.EmailAddress, ErrorMessage="Fill in a valid email address")]
    [Required(ErrorMessage="Fill in your email address")]
    public string SenderEmail { get; set; }

    [DisplayName("Message subject")]
    [Required(ErrorMessage="Fill in the message subject")]
    [StringLength(maximumLength:30, MinimumLength=5, ErrorMessage="The subject must be 5 to 30 characters long")]
    public string Subject { get; set; }

    [DisplayName("Message text")]
    [Required(ErrorMessage="Enter message text")]
    [StringLength(maximumLength:3000, MinimumLength=20, ErrorMessage="Your message can be 20 to 3000 characters long")]
    public string MessageBody { get; set; }


The controller code follows:


...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:

Instructions for adding other functionalities to the application before we start the order administration. Also includes new routing rules.

Limited offer: Learn all knowledge and save money

Buy articles and tests separately one by one 990 points
Buy all currently available articles in the section including all features for an exclusive price 782 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 $18.71. This is a time limited offer for all articles in this course. Buy it now and gain a limited 21% discount.
You gain 782 points for adding an article to the site, or for $89.10 $70.39
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
Article has been written for you by Martin Petrovaj
Activities (3)