2016-12-20 6 views
1

私はasp.net ID 2.1を使用して二要素認証を実装しています。確認のためにリンク付きのメールを送信すると正しく動作しますが、メールの本文を整形しようとすると問題が発生しました。アイデンティティ2.1に精通している方のために、ここで私は電子メールを送信するために使用するコードは次のとおりです。電子メール本文のhrefのASP.NET形式は、テキストの代わりにリンク全体を表示します

await UserManager.SendEmailAsync(user.Id, "Reset Password", "Paragraph 1\n\nParagraph 2\n\nClick the reference below\n\n<a href=\"" + callbackUrl + "\">Link</a>"); 

私はちょうど単語「リンク」ハイパーテキストとして表示されるように期待していたが、代わりに全体のリンクは単語「のリンクだけではなく、表示されます'メールには、あなたがリンクになるまで本文が期待通りに表示され、次のように表示されます:

リンク "リンクURLはすべてハイパーテキストとして下線が引かれますが、先頭の" Link "はプレーンテキストとして表示されます。私はstring.formatを使用しようとしましたが、私は見た目のサンプル画面で私が望むように見える他の例を見てきました。ちょうど "リンク"という言葉はハイパーテキストです。自分のコードをコピーして、それはまだ動作しません。

私はここで何を望むか、間違っているのでしょうか?任意の提案をいただければ幸いです。

乾杯、 ラリー

答えて

1

解決策は非常に簡単でした。送信するメッセージの本文がHTML形式であることを確認する必要があります。だからあなたの電子メールサービスでは、次のものがあります。

メッセージがIdentityMessage(ASP.Netアイデンティティ2.1の場合)

非常にシンプルなソリューションであり、私はそれを考えていなかった信じることができなかった

message.IsBodyHTML = true; 

またはhereのように既に回答していることを確認してください。

乾杯、 ラリー

関連する問題