Наша веб-страница работала нормально - получайте информацию от пользователей, а затем отправляйте нам электронные письма.Но он перестал работать после недавнего обновления хост-сервера.Похоже, что хост специально убрал разрешения, необходимые веб-странице для доступа к SMTP.
- Если у нас есть
"trust level="Full" originUrl="""
в web.config, веб-сайт не будет отображать никаких страниц.Ниже приведено сообщение об ошибке:
Сообщение об ошибке синтаксического анализатора: этот раздел конфигурации нельзя использовать по этому пути.Это происходит, когда администратор сайта заблокировал доступ к этому разделу с помощью унаследованного файла конфигурации.
Если я удаляю
"trust level="Full" originUrl="""
из web.config, веб-сайт отображает страницы.Однако страница для отправки электронной почты не будет работать.Сообщение об ошибке:
(Using port 25) Failure sending mail. Unable to connect to the remote server.
(Using port 587) Request for the permission of type 'System.Net.Mail.SmtpPermission, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed.
Ниже приведен код для отправки электронных писем:
MailMessage o = new MailMessage("from email", "to email", "subject", "body");
o.IsBodyHtml = true;
SmtpClient smtpobj = new SmtpClient("host", 587);
smtpobj.EnableSsl = false;
smtpobj.UseDefaultCredentials = true;
smtpobj.Credentials = new NetworkCredential("from email", pass);
smtpobj.Send(o);
Интересно: 1. Можно ли переопределить уровень доверия из моегоweb.config?2. Можно ли изменить код так, чтобы отправка писем работала без полного доверия?
Большое спасибо!