ユーザーが初めて登録したときに、サインアップ リンクを Gmail アカウントに送信したいのですが、これは、ユーザーのメール アドレスの信頼性を確認するためです。私はこれを達成しましたが、私の問題は、ユーザーがリンクとメッセージ本文も取得していないことです。関数でこの 2 つを定義すると、エラーが発生します。これは私に次のエラーを与える私の機能です:
「非静的フィールド、メソッド、またはプロパティ 'System.Web.Mvc.Controller.HttpContext.get' にはオブジェクト参照が必要です」および message.body="" の構文エラー。
これにはどうすればよいですか?
public class EmailManager
{
private const string EmailFrom = "noreplay@gmail.com";
public static void SendConfirmationEmail(string userName)
{
var user = Membership.GetUser(userName.ToString());
var confirmationGuid = user.ProviderUserKey.ToString();
//var verifyUrl = HttpContext.Current.Request.Url.GetLeftPart
// (UriPartial.Authority) + "/Account/Verify/" + confirmationGuid;
using (var client = new SmtpClient())
{
using (var message = new MailMessage(EmailFrom, user.Email))
{
message.Subject = "Please Verify your Account";
// message.Body = "To verify your account, please click the following link:"
//+ "<a href=\"" + verifyUrl + "\" target=\"_blank\">" + verifyUrl + "
//+"</a></p><div>Best regards,</div><div>Someone</div><p>Do not forward "
//+"this email. The verify link is private.</p></body></html>";
message.IsBodyHtml = true;
client.EnableSsl = true;
client.Send(message);
};
};
}
}
これを手伝ってください。