2017-08-30 171 views
1

我創建一個反饋表並通過電子郵件發送給管理員SMTP Server。我已成功發送。現在我想要顯示一個電子郵件發送成功 發送電子郵件後的消息。我正在使用Response.Write,但效果不佳。我已經使用AjaxJquery和許多其他解決方案,但他們沒有給我帶來好的結果。通過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

你可以這樣做:

[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); 
} 

在你創建視圖

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

這是做它,你可以只是其中一種方法利用ViewBag財產也可以實現這一點

相關問題