是否可以覆盖web.config中的信任级别

时间:2019-04-26 11:46:38

标签: web-config smtpclient full-trust

我们的网页过去运行良好–从用户那里获取信息,然后向我们发送电子邮件。但是在最近的托管服务器升级之后,它停止了工作。主机似乎已特别剥夺了网页访问SMTP所需的权限。

  1. 如果web.config中有"trust level="Full" originUrl=""",则该网站将不会显示任何页面。下面是错误消息:

解析器错误消息:无法在此路径上使用此配置节。当站点管理员使用继承的配置文件锁定了对本节的访问时,就会发生这种情况。

  1. 如果我从web.config中删除"trust level="Full" originUrl=""",则该网站将显示页面。但是,用于发送电子邮件的页面将无法使用。错误消息是:
(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.是否可以修改代码,以便在没有完全信任的情况下发送电子邮件?

非常感谢您!

0 个答案:

没有答案