使用此技术不会在电子邮件中发送图像

时间:2017-11-15 17:07:48

标签: c# html asp.net-mvc html-email

我希望发送电子邮件"参数化"因此,使用格式更容易,并做一些看起来很专业的事情。

我有这个文件夹:

enter image description here

这是Message.htm的内容:

<html>
<head></head>
<body style='color:grey; font-size:15px;'>
    <font face='Helvetica, Arial, sans-serif'>

    <div style='position:absolute; height:100px; width:600px; padding:30px;'>
        <img src='logo.png' />
    </div>

    <br />
    <br />

    <div style='background-color: #ece8d4; width:600px; height:200px; padding:30px; margin-top:30px;'>

        <p>Please click the link below to login and get started.</p>
        <p>
            Username: {0}<br>
            Password: {1}<br>
        </p>
        <br />
        <p>Now get lost... cause it's just a test</p>
    </div>
    </font>
</body>
</html>

然后在我的控制器中,只需使用此c#发送它:

 string body;
 using (var sr = new StreamReader(Server.MapPath("\\Email\\Message.htm") ))
 {
     body = sr.ReadToEnd();
 }


 string username = "anto";
 string password = "RandomNumber";

 string messageBody = string.Format(body, username, password);

 EnvoieCourriel("pelletier_antoine@hotmail.com", messageBody, restOfTheParams);

正确发送Emial。问题 ? <img src='logo.png' />永远不会显示。我尝试了很多奇怪的代码。尚未接近成功......

编辑:

我希望将图像作为内联内容发送到电子邮件中。

1 个答案:

答案 0 :(得分:1)

HTML更改为img标记中的完整路径:

      <html>
 <head></head>
 <body style='color:grey; font-size:15px;'>
     <font face='Helvetica, Arial, sans-serif'>

     <div style='position:absolute; height:100px; width:600px; padding:30px;'>
         <img src='http://somepath.com/images/logo.png' />
     </div>

     <br />
     <br />

     <div style='background-color: #ece8d4; width:600px; height:200px; padding:30px; margin-top:30px;'>

         <p>Please click the link below to login and get started.</p>
         <p>
             Username: {0}<br>
             Password: {1}<br>
         </p>
         <br />
         <p>Now get lost... cause it's just a test</p>
     </div>
     </font>
 </body>
 </html>

否则接收器将永远不会看到该图像。