電子メール(System.Net.Mail.SmtpClient)添付ファイルにナイスネームを設定する方法

StackOverflow https://stackoverflow.com/questions/1039664

質問

C#でSystem.Net.Mail.SmtpClientを使用して添付ファイルを送信しています。
添付ファイルの名前は、添付ファイルコンストラクターに渡すファイルの名前と同じです

myMail.Attachments.Add(new Attachment(attachmentFileName));

「いいね」を設定するにはどうすればよいですか。添付ファイルの名前?私が現在持っている名前は、基本的には、レポートのオカレンスが添付されていることを示す数値IDです。ユーザーは" results.xls"のようなもっとフレンドリーなものを探しています。

役に立ちましたか?

解決

Attachment.Nameプロパティ:

  

この添付ファイルに関連付けられているコンテンツタイプのMIMEコンテンツタイプ名の値を取得または設定します。

添付 < code> .Name プロパティを好きなものに。最後のリンク内の例では、次のことができます。

// Create  the file attachment for this e-mail message.
Attachment data = new Attachment(file, MediaTypeNames.Application.Octet);
data.Name = "VeryNiceName.dat"; //(not in original example)
...
message.Attachments.Add(data);

他のヒント

添付ファイルを一時フォルダに目的の名前で保存し、添付します。一時フォルダーが大きくなりすぎないように、メールを送信した後に削除することを忘れないでください。

編集:受け入れられた答えははるかに優れていますが、同じ思考経路をたどり、それがいかに間違っているかを見る他の人のためにここに残しておきます。

You can use this constructor for Attachment

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top