CI は MVC.ActionMailer を使用して、私の Web サイトから電子メールを送信しています。メールにインライン画像を埋め込む際に問題が発生しています。
これが私のコントローラーアクションです
public EmailResult WelcomeEmail()
{
WelcomeMailVM welcomeDetails = new WelcomeMailVM()
var path = HttpContext.Current.Server.MapPath("~/Content/images/myImage.png");
Attachments.Add("myImage.png", System.IO.File.ReadAllBytes(path));
//Attachments.Inline["holidaymate.png"] = System.IO.File.ReadAllBytes(path);
To.Add("someEmail@test.com");
From = "noreply@myDomain.com";
Subject = "Welcome to My Site;
return Email("WelcomeEmail", welcomeDetails);
}
および電子メールのビュー
@model HolidayMate.API.ViewModels.Mail.WelcomeMailVM
@using ActionMailer.Net.Mvc
@{
Layout = "~/Views/Shared/_MailLayout.cshtml";
}
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<table cellpadding="0" cellspacing="0" border="0" id="backgroundTable">
<tr>
<td style="width:300px">
@Html.InlineImage("myImage.png")
</td>
<td style="width:300px">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td>Date</td>
<td>@DateTime.Now.ToString("dd MMMM yyyy")
</td>
</tr>
</table>
</td>
</tr>
</table>
メールは完璧に送信されます。しかし、画像はメールに表示されません。gmail と Thunderbird でこの問題が発生します。残念ながら、テストする見通しがありません。ググったら以下を見つけた
#38 Thunderbird でインライン画像が表示されない
しかし、メールのコンテンツ タイプをどこに送信すればよいかわかりません。どんな助けでも大歓迎です。