6

我无法通过 ASP.NET 发送电子邮件并向我的网络主机发送电子邮件寻求帮助,并被告知要修改我的安全设置并收到一个链接:

http://forums.asp.net/t/1111145.aspx/1

我已经阅读了那里所说的内容并尝试 <trust level="Full" originUrl="" />在 web.config 中进行设置,但随后出现错误:

This configuration section cannot be used at this path. This happens when the site administrator has locked access to this section using <location allowOverride="false"> from an inherited configuration file.

我没有设置任何其他 web.config 文件。

所以我再次询问了网络主机,并询问它是否是我无法更改的服务器设置,但我得到的回答只是:

You'll need to specify a more specific path.

这很可爱,但我不知道这意味着什么!

做了更多的挖掘后,我想知道是否必须设置一个单独的trust文件,这是正确的吗?

有人可以指出我设置信任级别的正确方法(我意识到“完整”也可能不正确?)因为我真的不明白我应该做什么!

4

2 回答 2

8

信任级别记录在这里:http: //msdn.microsoft.com/en-us/library/ie/wyts434y.aspx。在共享主机中,提供商会锁定该设置,因此您无法在 web.config 中进行更改。如果您明确要求您的提供商允许完全信任您的应用程序,并且如果他们回答“嗯?”,那么您正在与未受过教育的人交谈 - 请求升级或更改主机。“请以完全信任的方式配置我的应用程序”应该足够清楚。请注意,一旦他们了解您的要求,他们可能不愿意这样做。

另外,我不能确定发送邮件需要完全信任。发送邮件涉及到与 SMTP 服务器进行通信的能力,通常网络主机只允许访问他们的邮件,而他们会阻止其他所有内容(用于防止垃圾邮件)。您将无法说服他们为您破例,但如果您问“请告诉我使用哪个 smtp 和端口从我的 asp.net 应用程序发送电子邮件”,他们应该给您(否则,升级或更改主机)。实际上,您应该先请他们帮助您发送邮件,然后才能得出结论认为信任级别是阻碍它的原因(现在,我很确定它不会)。

另外,请阅读此内容:https ://meta.stackexchange.com/questions/66377/what-is-the-xy-problem

于 2012-01-30T19:51:26.567 回答
-3

尝试这个:

 public static void ConfirmMail(string emailTo)

{
    try
    {

        MailMessage message = new MailMessage();
        message.Subject = "Account Registration From 91calls";
        message.From = new MailAddress(Convert.ToString("admin@91calls.com"),"Admin");
        message.To.Add(emailTo);
        message.BodyEncoding = System.Text.Encoding.UTF8;
        StringBuilder sb = new StringBuilder();
        sb.Append("<html>");
        sb.Append("<Body>");
        sb.Append("<table cellpadding='0' cellspacing='0' width='100%' border='0'>");
        sb.Append("<tr><td align='center'><table cellpadding='0' cellspacing='0' width='100%' border='0'>");
       // sb.Append("<tr><td align='left'><asp:Image ID='imgLogo' runat='server' ImageUrl='http://supervau.w01.winhost.com/images/logo.png' />");
        sb.Append("</td></tr><tr><td>Hi, <br></td></tr><tr><td align='left'>You are successfylly resgistered with 91 calls.<br>");
        sb.Append("<br>Thank you for using, : http://www.91calls.com<br /><br>For questions or concerns regarding your account, please visit : http://www.91calls.com");
        sb.Append("</td></tr></table></td></tr></table>");
        sb.Append("</Body>");
        sb.Append("</html>");
        message.Body = sb.ToString();
        message.IsBodyHtml = true;
        SmtpClient client = new SmtpClient();
        client.Send(message);


    }
    catch
    {
    }

}
于 2013-03-21T06:15:22.557 回答