2011-07-13 13 views
10

「これはテストです\ r \ n」というテキストがあります。ありがとうございます。「MailMessageクラスを使用してメールを送信しています。私は "IsBodyHtml"プロパティをfalseに設定しました。問題は、改行なしでメールを受信して​​いることです。私が逃していることを教えてくれますか?メールをプレーンテキストとして送信するときに改行が無視される

+0

この質問には、このリンクでもっとよく答えるかもしれないと思います。http://stackoverflow.com/questions/247546/outlook-autocleaning-my-line-breaks-and-screwing-up-my-email-format – user1387916

答えて

14

\ r \ nの代わりにEnvironment.NewLinemsdnを使用してください。

0

あなたのメールで単なるテストではなく、改行を組み込むには、body htmlをtrueに設定する必要があります。

+0

改行を持つことができます.2つの改行やピリオドなどの行を入れることはできません。その特定のシーケンスはメッセージの終わりを示し、SMTPサーバーはクロスアイになります。 – Tremmors

+0

私はそれがちょうどhtml電子メールを送信する方が簡単だと思います。誰か(ほとんどはマーケティング/経営幹部)は、プレーンテキストを見たときにきれいなメールを要求し、それをやり直す必要があります。しかし、私は、プレーンテキストの電子メールのみを送信できる状況があることを理解しています。 – Dean

8

私たちは同じ問題を抱えていたが、 StringBuilderのとは対照的に、あなたは、文字列にすべてを一度にあなたのメッセージを定義した場合、あなたはこのようなあなたのメッセージを定義することができます定義

string message = string.Format(
@"First Line: {0} 
Second Line: {1} 
ThirdLine: {2}", firstValue, secondValue, thirdValue); 

このようなメッセージ本文で、 IsBodyHtml = falseと設定すると、新しい行が表示されます。あなたは、Outlookからあなたのメールを読んでいる場合

は、そうでない場合は、 StringBuilderの

var sb = new StringBuilder(); 
sb.AppendLine("FirstLine"); 
sb.AppendLine("SecondLine"); 
+0

IsBodyHtml = falseがトリックでした!ありがとう.. – Vaibhav

2

を使用し、それは彼らが余分な改行ある思考、改行を削除されているOutlookかもしれません。別のソフトウェアからメールを読んだり、ウェブメールを読んだりしましたか?

+0

+1あなたは正しいです:) –

0

これは私がちょうどに対処しなければならなかったことが起こり得るよりトリッキーな理由:

  • メールサーバーが送信メッセージを操作して、私がいたあなたのそれ以外のメッセージのみをテキスト
0

にHTMLバージョンを追加私の改行のほとんどが機能していたのと同じ問題を抱えていましたが、そうではありませんでした。改行が表示されていない電子メールに返信すると、返信の元の電子メールテキストに改行が表示されます(これはOutlookの問題であることを示しています)。私はEnvironment.NewLineの推奨回答を試みましたが、何も変更しませんでした。私の場合は、文の最後にピリオドを追加して、新しい行を挿入してから\ r \ nを入れてください。このディスカッションに投稿した以前のリンクでは、Outlookは改行を除外するためにいくつかのルールを使用していましたが、このディスカッションを開始した質問では、文の最後にピリオドがないことがわかります。

0

Outlookでメールを表示しているときに、PowerShellスクリプトを使用して電子メール通知を送信していて、改行を取得しませんでした。 は私にとって.ps1というファイル内の溶液は、このでした:これは、Outlookの機能です

$emailMessage.Body = "First Line" + "`r`n" + "Second Line" 
2

は、Outlookでそれをオフにすることができます。 Options - Mail - に行き、 "Message Format"の下で "余分な改行をプレーンテキストメッセージで取り除く"のチェックを外します。

別の解決策は、メールを送信するときに、各行の最後に3つのスペースを追加することです。これはOutlookが余分な改行ではないことを受け入れるようです。

関連する問題