The following is a method for sending an Email from a Razor page in ASP.NET Core. I need to use MailKit since System.Net.Mail is not available in ASP.NET Core.
Despite much research, I haven't been able to figure out a way to include the image to the Email. Note that it doesn't have to be an attachment - embedding the image will work.
    public ActionResult Contribute([Bind("SubmitterScope, SubmitterLocation, SubmitterItem, SubmitterCategory, SubmitterEmail, SubmitterAcceptsTerms, SubmitterPicture")]
        EmailFormModel model)
    {
        if (ModelState.IsValid)
        {
            try
            {
                var emailName= _appSettings.EmailName;
                var emailAddress = _appSettings.EmailAddress;
                var emailPassword = _appSettings.EmailPassword;
                var message = new MimeMessage();
                message.From.Add(new MailboxAddress(emailName, emailAddress));
                message.To.Add(new MailboxAddress(emailName, emailAddress));
                message.Subject = "Record Submission From: " + model.SubmitterEmail.ToString();
                message.Body = new TextPart("plain")
                {
                    Text = "Scope: " + model.SubmitterScope.ToString() + "\n" +
                        "Zip Code: " + model.SubmitterLocation.ToString() + "\n" +
                        "Item Description: " + model.SubmitterItem.ToString() + "\n" +
                        "Category: " + model.SubmitterCategory + "\n" +
                        "Submitted By: " + model.SubmitterEmail + "\n" +
                        // This is the file that should be attached.
                        //"Picture: " + model.SubmitterPicture + "\n" +
                        "Terms Accepted: " + model.SubmitterAcceptsTerms + "\n"
                };
                using (var client = new SmtpClient())
                {
                    client.Connect("smtp.gmail.com", 587);
                    // Note: since we don't have an OAuth2 token, disable
                    // the XOAUTH2 authentication mechanism.
                    client.AuthenticationMechanisms.Remove("XOAUTH2");
                    // Note: only needed if the SMTP server requires authentication
                    client.Authenticate(emailAddress, emailPassword);
                    client.Send(message);
                    client.Disconnect(true);
                    return RedirectToAction("Success");
                }
            }
            catch (Exception ex)
            {
                Debug.WriteLine(ex.Message + ": " + ex.StackTrace);
                return RedirectToAction("Failure");
            }
        }
        else
        {
            return View();
        }
    }
 
    