前提・実現したいこと
C#、ASP.NET MVC5で、下記URLの記事のアカウントの確認のためのEmailServiceの機能を作成したいですが、うまくいかなくて困ってます。
ASP.NET Identity (C#) を使用したアカウントの確認とパスワードの回復
https://docs.microsoft.com/ja-jp/aspnet/identity/overview/features-api/account-confirmation-and-password-recovery-with-aspnet-identity
この機能を使用するためにNugetのパッケージでSendGridが必要になりますが、自分の環境の都合で、バージョン8.0.5までしか使用できなく、
・バージョンの都合で、SendGridのSendGridMessage()がないため、下記のコードを置き換えする必要があるが、わからなかった。
var myMessage = new SendGridMessage();
・var transportWeb = new Web(credentials); のWeb()でエラーが発生し、これをどう変更したらよいかわからない。
お手数おかけしますが、ご教授をお願いします
該当のソースコード
c#
1public class EmailService : IIdentityMessageService { 2 public Task SendAsync(IdentityMessage message) { 3 return configSendGridasync(message); 4 } 5 6 private Task configSendGridasync(IdentityMessage message) { 7 var myMessage = new SendGridMessage(); 8 myMessage.AddTo(message.Destination); 9 myMessage.From = new System.Net.Mail.MailAddress( 10 "Joe@contoso.com", "Joe S."); 11 myMessage.Subject = message.Subject; 12 myMessage.Text = message.Body; 13 myMessage.Html = message.Body; 14 15 var credentials = new NetworkCredential( 16 ConfigurationManager.AppSettings["mailAccount"], 17 ConfigurationManager.AppSettings["mailPassword"] 18 ); 19 20 // Create a Web transport for sending email. 21 var transportWeb = new Web(credentials); 22 23 // Send the email. 24 if (transportWeb != null) { 25 return transportWeb.DeliverAsync(myMessage); 26 } else { 27 return Task.FromResult(0); 28 } 29 } 30}
補足情報(FW/ツールのバージョンなど)
.NET Framework 4.7.2
C#、ASP.NET MVC5
Visual Studio Express 2012 for Web
回答1件
あなたの回答
tips
プレビュー