最近看到很多人在问这个问题就是如何在Mail的正文中如何显示附件的图片本人也不会就去网上搜索可是网上竟然没有(可能是太简单很多人不屑提供代码)于是本人就尝试
最先想到的就是outLook可以显示附件中的图片于是在OutLook的邮件正文:右键>ViewSource 就看到了
<img width=
height=
id=
_x
_i
src=cid:imagejpg@CCAFCEED>
这种代码 所以产生的第一个想法就是在写正文的时候自动根据附件去生成类似代码说干就干马上动手!
新建一个网站拖几个FileUpload 上去如下图
根据MicroSoft自带的SystemNetMail 组件完成发送方法代码如下
using System;
using SystemCollectionsGeneric;
using SystemText;
using SystemNetMail;
using SystemNet;
using SystemIO;
namespace STSMailSystemCommon
{
public class QMail
{
/**//// <summary>
/// 描述:Email发送通用函数
/// </summary>
/// <param name=from>发件人</param>
/// <param name=to>收件人(多个收件人以逗号隔开)</param>
/// <param name=subject>主题</param>
/// <param name=text>内容</param>
/// <param name=attch>附件</param>
/// <returns></returns>
public string MailSend(string from string to string cc string subject string text Attachment attch string priority)
{
MailMessage message = new MailMessage(from to);
messageCCAdd(cc);
messageSubject = subject;
messageBody = text;
//messageCCAdd(new MailAddress(from)); //超送给自己
//messageBccAdd(new MailAddress());
if (attch != null)
{
Attachment data = attch;
messageAttachmentsAdd(data);
}
messageBodyEncoding = SystemTextEncodingUTF;//编码方式
switch (priorityToUpper())
{
case HIGH:
messagePriority = MailPriorityHigh;//优先级
break;
case NORMAL:
messagePriority = MailPriorityNormal;//优先级
break;
case LOW:
messagePriority = MailPriorityLow;//优先级
break;
default:
messagePriority = MailPriorityNormal;//优先级
break;
}
messageIsBodyHtml = true;//是否是html格式
SmtpClient client = new SmtpClient();//不同情况更改
//clientCredentials = CredentialCacheDefaultNetworkCredentials;//匿名认证
try
{
clientSend(message);
return ;
}
catch (Exception e)
{
return eMessage;
}
}
}
}
[] []