2017-08-30 13 views
1

私はフィードバックフォームを作成し、SMTP Serverによって電子メールで管理者に送信します。私はそれを成功裏に送った。今私はを表示したい電子メールを送信した後、メッセージを送信した後に送信します。私はResponse.Writeを使用していますが、うまく機能しません。私はこの目的のためにAjax,Jqueryと他の多くのソリューションを使用しましたが、私は良い結果を示していません。メールをsmtpで送信した後にメッセージを表示

FeedbackController.cs

[HttpPost] 
[ValidateAntiForgeryToken] 
public ActionResult Create([Bind(Include = "Id,Name,Email,Comments")] Feedback feedback, string Message) 
{ 
    if (ModelState.IsValid) 
    { 
     bool result = false; 
     db.Feedbacks.Add(feedback); 
     db.SaveChanges(); 
     result = SendEmail("[email protected]", "Feedback", "<p>Hi Admin,<br/>My name is "+ feedback.Name + ". <br/> E_mail ID: " + feedback.Email + "<br/><br/>" + feedback.Comments + "<br/>Kind Regards,<br/>" + feedback.Name + "</p>"); 
     Response.Write("Email sent succeed"); 
     ModelState.Clear(); 
     return View("Create"); 
    } 
    return View(feedback);   
} 
+0

あなたはそこに必要なものに応じて、標準のメッセージまたは警告ボックスを表示するために 'ViewBag'または' JsonResult'を使うことができます。 –

答えて

2

あなたのような何かを行うことができます:あなたのビューを作成します

@if (TempData["EmailSent"] != null) 
{ 
    <p>@TempData["EmailSent"].ToString()</p> 
} 

これは、あなたがそれをすることができます行うためのひとつの方法であるに

[HttpPost] 
[ValidateAntiForgeryToken] 
public ActionResult Create([Bind(Include = "Id,Name,Email,Comments")] Feedback feedback, string Message) 
{ 
    if (ModelState.IsValid) 
    { 
    //your code  
     TempData["EmailSent"] = "Email sent succeed"; 
     return View("Create"); 
    } 
    return View(feedback); 
} 

ViewBagプロパティを使用するこれを達成するには

関連する問題