Windows Phone 8 sendGridMessage编译错误

时间:2015-07-21 21:48:29

标签: c# email azure windows-phone-8 sendgrid

   private async void sendMail(string from,string to, string subject,string text)
    {     
        // Create network credentials to access your SendGrid account
        string username = "xx";
        string pswd = "xx";

        MailMessage msg = new MailMessage();

        NetworkCredential credentials = new NetworkCredential(username, pswd);
        // Create the email object first, then add the properties.
        // Create the email object first, then add the properties.
        SendGridMessage myMessage = new SendGridMessage();
        myMessage.AddTo("xx");
        myMessage.Subject = "Testing the SendGrid Library";
        myMessage.Text = "Hello World!";
        myMessage.From = new MailAddress(from);

        // Create an Web transport for sending email.
        var transportWeb = new SendGrid.Web(credentials );

        // Send the email.

        await transportWeb.DeliverAsync(myMessage);
   }

我的应用程序是Windows Phone 8.1,我尝试通过sendGrid发送邮件我创建了一个帐户并包含了代码库,但它给出了3个错误:

  1. 错误CS0570:语言不支持“SendGrid.SendGridMessage.From”
  2. 错误CS1502:“SendGrid.Web.Web(string)”的最佳重载方法匹配有一些无效的参数
  3. 错误CS1503:参数1:无法从'System.Net.NetworkCredential'转换为'string'
  4. 我使用此网站“https://azure.microsoft.com/tr-tr/documentation/articles/sendgrid-dotnet-how-to-send-email/”作为参考。

    错误源于应用程序是Windows Phone应用程序还是什么?

    还有其他方式通过在代码中声明“发件人”来发送电子邮件吗?

1 个答案:

答案 0 :(得分:1)

这不是你问题的真正答案,但重要的是我把它作为答案而不是评论。

这不是从移动设备发送电子邮件的安全方式,因为您要向安装的用户提供包含凭据的代码。他们所需要做的就是检查来自您应用的流量,并且您的SendGrid API密钥或帐户已遭到入侵。

您需要向某个安全后端服务器(或提供商,例如Parse或Azure)发出请求,然后从该服务器而不是客户端应用程序发送电子邮件。

如果您想调试代码,请查看Github上的自述文件和示例。微软的文档很快就过时了。 https://github.com/sendgrid/sendgrid-csharp