index.htmlを:
<!DOCTYPE HTML>
<HTMLのxmlns = "http://www.w3.org/1999/xhtml">
<HEAD>
<META HTTP-当量= "Content-Typeの"コンテンツ= "text / htmlの;のcharset = UTF- 8" />
<タイトル>邮箱发送</ TITLE>
<スクリプトSRC = "スクリプト/ jqueryの-1.11.2.min.js"> </ SCRIPT>
<スクリプトSRC = "スクリプト/ jquery.form.min.js" > </ SCRIPT>
</ HEAD>
<BODY>
邮箱内容:の<input type = "text" ID = "コンテンツ"名前= "コンテンツ" />
の<input type = "ボタン"値= "发送" onclickの= "送ります()」/>
<br />
</ BODY>
</ HTML>
submit_ajax.ashx:
Newtonsoft.Json.Linqを使用しました。
システムを使用しました。
System.Collections.Genericを使用しました。
System.Linqのを使用しました。
System.Webのを使用して、
名前空間のsendEmail
{
/// <要約>
/// submit_ajax的摘要说明
/// </要約>
パブリッククラスsubmit_ajax:IHTTPハンドラ
{
公共ボイドのprocessRequest(のHttpContextコンテキスト)
{
文字列アクション= context.Request [ "アクション"]。
スイッチ(アクション)
{
ケース"のsendEmail"
のsendEmail(コンテキスト)。
ブレーク;
}
}
電子メールを送信#region ============================================
ます。private void sendEmail(のHttpContextコンテキスト)
{
文字列のコンテンツcontext.Request = [ "コンテンツ"];
jオブジェクトjオブジェクトJSON新しい新=();
/// <まとめ>
///メール
/// </要約>
/// <PARAM名前= "SmtpServerは"> SMTPサーバー</ param>の
/// <PARAM NAME = "ポート">ポート</ param>の第
/// <PARAM NAME = "enablessl" > SSL暗号化</ param>のかどうか
// /ます。<param name = "userNameに" > ログイン</ param>のアカウント
///ます。<param name = "PWD" > パスワード</ param>の
///ます。<param name = "ニックネーム" > 送信者のニックネーム</ param>の
/// <PARAM NAME = "strfrom">送信者</ param>の
+コンテンツ; 文字列のファイルパス=「/upload/fujian.png」。 してみてください {
//付属品なし
Mail.sendMail(SmtpServerは、
EnableSSL、
ユーザ名、
PWD、
ニックネーム、
strfrom、
strto、
港、
SUBJの、bodysの);
//含附件
Mail.sendMail(SmtpServerは、
enablessl、
ユーザ名、
PWD、
ニックネーム、
strfrom、
strto、
ポート、
SUBJ、bodysの、ファイルパス)。
}
キャッチ
{
JSON [ "MSG"] = "发送失败"。
context.Response.Write(json.ToString())。
返します。
}
JSON [ "MSG"] = "发送成功"。
context.Response.Write(json.ToString())。
返します。
}
#endregion
パブリックブールIsReusable
{
取得
{
falseを返します。
}
}
}
}
Mail.cs:
システムを使用しました。
System.Collections.Genericを使用しました。
System.IOを使用しました。
System.Linqのを使用しました。
System.Net.Mailを使用しました。
System.Net.Mimeを使用しました。
System.Webのを使用して、
sendEmail名前空間
{
publicクラスメール
{
#region電子メール
/// <要約>
///電子メール
/// </要約>
/// <PARAM NAME = "SmtpServerは"> SMTPサーバー</ param>の
// / <PARAM NAME = "ポート" > ポート</ param>の第
/// <PARAM NAME = "enablessl" > </ param>のSSL暗号化を有効にするかどうか
/// <PARAM NAME = "userNameに">ログインアカウント</ PARAM >
/// <PARAM NAME = "PWD">パスワード</ param>の
/// <PARAM NAME = "ニックネーム">送信者のニックネーム</ param>の
/// <PARAM NAME = "strfrom">送信人間</ param>の
/// <PARAM NAME = "strto ">受信者</ param>の
/// <PARAM NAME =" SUBJ ">テーマ</ param>の
/// <PARAM NAME ="のbodys「>コンテンツ</ param>の
静的ボイドSENDMAIL公開(SmtpServerは文字列、int型のEnableSSL、ユーザ名の文字列、文字列のPWD、ニックネーム文字列、文字列strfrom、文字列strtoは、SUBJ Stringのポート、文字列のbodys INT)
{
SmtpClient _smtpClient SmtpClientを新しい新=();
_smtpClient.DeliveryMethod = SmtpDeliveryMethod。ネットワーク; //指定された電子メールの実施形態
_smtpClient.Host = SmtpServerは; //指定したSMTPサーバー
_smtpClient.Credentials =新しいSystem.Net.NetworkCredential(ユーザ名、PWD ); // ユーザ名とパスワード
IF(。EnableSSL == 1)
{
_smtpClient =真.EnableSslに;
}
_smtpClient.Port =ポートと
_From =新しい新しいMailAddress MailAddress(strfrom、ニックネーム);
MailAddressの_to =新しい新しいMailAddress(strto);
はMailMessage _mailMessage =新新はMailMessage(_from、_to);
_mailMessage.Subject = SUBJ; //テーマ
_mailMessage.Body =のbodys; //コンテンツ
_mailMessage .BodyEncoding = System.Text.Encoding.Default; //テキストエンコーディング
_mailMessage.IsBodyHtml = TRUE; // HTMLに設定
_mailMessage.Priority = MailPriority.Normal; //優先
_smtpClient.Send(_mailMessage);
}
#endregion
電子メールの添付ファイルを含む#region
/// <要約>
///電子メール
/// </要約>
/// <PARAM = "SmtpServerは"名> SMTPサーバー</ param>の
///の<paramの名前= "ポート">ポート</ param>の第
/// <PARAM NAME = "enablessl" > </ param>のSSL暗号化を有効にするかどうか
/// <PARAM NAME = "userNameに">ログインアカウント</ param>の
/// < paramの名前= "PWD">パスワード</ param>の
/// <PARAM NAME = "ニックネーム">送信者のニックネーム</ param>の
/// <PARAM NAME = "strfrom">差出人</ param>の
/// <PARAM NAME = "strto" > 受信者</ param>の
/// <PARAM NAME = "SUBJ">テーマ</ PARAM>
/// <PARAM NAME = "のbodys">概要</ PARAM>
/// <PARAM NAME = "ファイルパス">アネックス絶対アドレス</ PARAM>
静的ボイドSENDMAIL公開(SmtpServerは文字列、EnableSSLユーザ名文字列、文字列のPWD、ニックネーム文字列、文字列strfrom、文字列strto、ポートINT、SUBJの文字列のbodys文字列、文字列のファイルパスをINT)
{
SmtpClient _smtpClient SmtpClient(=新しい新規);
_smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network; //あなたは電子メールを送信する方法を指定
_smtpClient.Host = SmtpServerは; // SMTPサーバーの指定
_smtpClient.Credentials =新しいSystem.Net.NetworkCredential(PWDユーザー名 ); // ユーザ名とパスワード
であれば(enablessl == 1 )
{
_smtpClient.EnableSsl = trueに;
}
_smtpClient.Port =ポートと
_From =新しい新しいMailAddress MailAddress(strfrom、ニックネーム);
MailAddressの_to =新しい新しいMailAddress(strto);
はMailMessage _mailMessage =新新はMailMessage(_from、_to);
_mailMessage.Subject = SUBJ; //テーマ
_mailMessage.Body =のbodys; //コンテンツ
_mailMessage .BodyEncoding = System.Text.Encoding.Default; //テキストエンコーディング
_mailMessage.IsBodyHtml =真; // HTMLに設定
_mailMessage.Priority = MailPriority.Normal; //優先順位
アネックス//
文字列[]パスfilepath.Split =( '');
foreachの(文字列アイテムパスで)
{
(String.IsNullOrEmpty(項目))IF
{
続行;
}
//プロジェクトファイルの位置に応じて、このパスがあってもよいです
TEMP = @文字列"C:\ユーザー管理者\デスクトップ\のsendEmail \のsendEmail \" +項目;
のFileStream =新しい新しいファイルのFileStream(TEMP、FileMode.Open、FileAccess.Read);
文字列名= Path.GetFileName(file.name)。
_mailMessage.Attachments.Add(新しい新しい添付ファイル(ファイル、名前、MediaTypeNames.Application.Octet));
}
_smtpClient.Send(_mailMessage)。
}
#endregion
}
}
プロジェクト全体のディレクトリをドキュメント: