I'm trying to send a notification email, to users with ASP.NET Core 5.0 razor.
I can't understand what have I done wrong so that I can't send the email?
This is what I have done so far:
 <form method="post">
        <div asp-validation-summary="ModelOnly" class="text-danger"></div>
         <div class="form-group" >
            <input asp-for="SendEmail.AdminEmail" class="form-control" value="@User.Identity.Name" readonly/>
            <span asp-validation-for="SendEmail.AdminEmail" class="text-danger"></span>
        </div>
       
        <div class="form-group">
            <input asp-for="SendEmail.ClientsEmail" class="form-control" value="test@mail.com" />
            <span asp-validation-for="SendEmail.ClientsEmail" class="text-danger"></span>
        </div>
         <div class="form-group">
            <input asp-for="SendEmail.Subject" class="form-control" placeholder="Subject"/>
            <span asp-validation-for="SendEmail.Subject" class="text-danger"></span>
        </div>
        <div class="form-group">
            <textarea asp-for="SendEmail.BodyText" class="form-control" style="min-height:50vh;max-height:50vh;" ></textarea>
            <span asp-validation-for="SendEmail.BodyText" class="text-danger"></span>
        </div>
       <div class="form-group" style="text-align:center;">
                <button class="btn btn-sm btn-outline-info font-weight-bold" style="font-size: 110%;float:unset;min-width:100px;">
                    Send
                </button>
            </div>
    </form>
And the backend code :
public ActionResult OnPostAsync()
{
        MailMessage msg = new MailMessage();
        msg.From = new MailAddress("admin@mymail.com");
        msg.To.Add(new MailAddress("test@mymail.com"));
        msg.Subject = SendEmail.Subject;
        SmtpClient smtpClient = new SmtpClient("smtp.gmail.com", Convert.ToInt32(587));
        System.Net.NetworkCredential credentials = new System.Net.NetworkCredential("admin@mymail.com", "******");
        smtpClient.Credentials = credentials;
        smtpClient.EnableSsl = true;
        smtpClient.Send(msg);
        return RedirectToPage("./Index");
}
This is the error I am getting:
An unhandled exception occurred while processing the request. ExtendedSocketException: An attempt was made to access a socket in a way forbidden by its access permissions. [::ffff:142.250.145.108]:587
System.Net.Sockets.Socket.DoConnect(EndPoint endPointSnapshot, SocketAddress socketAddress)
SmtpException: Failure sending mail.System.Net.Mail.SmtpClient.Send(MailMessage message)
 
     
    