Добрый день, при передачи формы в контроллер переменная, которая должна содержать значение textarea равна null. Может кто сталкивался с подобным или сможет подсказать в чем проблема? Как передать значение из тега textarea в контроллер? С примером пожалуйста
Вот пример формы обратной связи:
@using (Html.BeginForm("SendFeedback", "Feedback", FormMethod.Post))
{
textarea required inputmode="latin-prose" placeholder="Введите свое имя: " name="Name" class="feedback-form-name" /textarea
textarea required inputmode="email" placeholder="Введите почту для обратной связи:" name="Email" class="feedback-form-mail" /textarea
textarea required maxlength="500" inputmode="latin-prose" placeholder="Введите текст сообщения:" name="MessageText" class="feedback-form-text" /textarea
input type="submit" value="Отправить" /
}
В данном примере описаны элементы textarea, в которых name - это аргумент, который будет передаваться в контроллер. Вот код контроллера:
[HttpPost]
public ActionResult SendFeedback(string Name, string Email, string MessageText)
{
using (SmtpClient client = new SmtpClient())
{
client.Port = 587;
client.Host = "smtp.gmail.com";
client.EnableSsl = true;
client.Timeout = 1000000;
client.DeliveryMethod = SmtpDeliveryMethod.Network;
client.UseDefaultCredentials = false;
client.Credentials = new System.Net.NetworkCredential($"mymail@gmail.com", $"password");
MailMessage mm = new MailMessage($"mymail@gmail.com", $"receiver@gmail.com", $"subject", $"Name: {Name};\nE-mail: {Email};\nText: {MessageText}");
mm.BodyEncoding = Encoding.UTF8;
mm.DeliveryNotificationOptions = DeliveryNotificationOptions.OnFailure;
client.Send(mm);
}
return RedirectToAction("Index","Home");
}