以下是我当前正在控制台应用程序中测试的代码。电子邮件发送成功。
但是主体被截断了,您只能看到This is test HTML
,而没有& rest of message
。我可以通过将&
替换为和来解决,但这不适用于需要在带有查询字符串参数的电子邮件中嵌入urls
的地方。
我尝试了HTML编码,但是没有运气。
var client = new RestSharp.RestClient("https://api.mailgun.net/v3");
client.Authenticator = new RestSharp.HttpBasicAuthenticator("api", "{APIKEY}");
RestSharp.IRestRequest request = new RestSharp.RestRequest("/{DOMAIN}/messages", RestSharp.Method.POST);
string MailBody = "<html>This is test HTML & rest of message</html>";
request.AddParameter("from", "{EmailAddress}");
request.AddParameter("h:Reply-To", "{EmailAddress}");
request.AddParameter("to", "{EmailAddress}");
request.AddParameter("subject", "Mailgun Test New");
request.AddParameter("html", MailBody);
try
{
RestSharp.IRestResponse response = client.Execute(request);
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
答案 0 :(得分:0)
我用
替换了&&
在文本中有效。
在链接中,我只是按原样保留了&,并且可以正常工作。
string MailBody = "<html><body>This is test HTML & rest of message. <a href=\"http://www.google.com?a=b&c=d\">Link with querystring</a></body></html>";
答案 1 :(得分:0)
问题出在我使用的完整RestSharp版本上。我更新了该项目以使用最新版本,并且一切都按预期进行。