作成時に文字列を渡して、メール本文に 2 つのアイテム リストを作成しようとしています。リストの 1 つは問題なく完全に機能します (意図したとおり、各エントリは新しい行にあります) が、同じ方法でフォーマットされた他のリストを取得する方法がわかりません。改行がないか、2 行間隔になっています。System.environment.newline、「\r\n」、「\n」、「\n」などを試しました。コードにブレークポイントを設定すると、文字列の適切な部分に「\n」が含まれます場所ですが、メールの作成時に表示されません。任意のヒント?
string users = "";
for (int i = 0; i < disabledUsers.Count; i++)
{
users += disabledUsers[i] + "\n"; //This does not show up as a new line for each item in an email
}
// initializing users with expired passwords to a string format
string expiredUserPasswords = "";
for (int i = 0; i < expiredPassword.Count; i++)
{
expiredUserPasswords += expiredPassword[i] + "\n"; //this works perfectly
}
// creating admin message
MailMessage emailAdmin = new MailMessage();
emailAdmin.From = new MailAddress("email.email@email.com");
emailAdmin.Body = "Automated system message:\n\nThe following " + numExpiredPasswords + " accounts have expired passwords and have been disabled:\n\n" + expiredUserPasswords + "\n\nThe following " + numDisabledAccounts + " accounts have been disabled for 90+ days:\n\n" + users + "\n\nThere are " + activeNum + " active users, " + numDisabled + " disabled users, and " + totalNum + " total users.\n\nThis is an automatically generated email. Please do not reply.";
emailAdmin.Subject = "Dataroom cleanup log";
これら 2 つのリストの違いがわかりません。なぜ一方が正常に機能し、もう一方が機能しないのか。どんな助けでも大歓迎です!
編集 - 私はそれを理解しました。Microbloft のおかげで、Outlook は余分な改行コマンドと思われるものを自動的に削除します。改行の直前にピリオドを追加するだけで修正したので、「.\n」.