2016-03-30 14 views
0

In meiner _Layout.cshtml Seite gibt es ein Textfeld, in dem der Benutzer seine E-Mail-Adresse eingeben kann (dies gilt für den Newsletter) nicht in die Datenbank einfügen und wenn es nicht in die Datenbank einfügen. zur gleichen Zeit, wenn nicht eingefügt ich eine Fehlermeldung angezeigt werden soll und wenn einfügen Ich möchte Erfolg message.this zeigen, wie ich in die Datenbank einfügen,So zeigen Sie eine Nachricht oder eine Warnung an, wenn der Datensatz erfolgreich in den Controller eingefügt wurde

public ActionResult getNewsLetterMail(string N_id, string N_EmailAdd) 
    { 
     Session["Ealert"] = null; 
     Random random = new Random(); 
     int idONe = random.Next(99, 999); 
     int idTwo = random.Next(999, 9999); 
     string middle = "menuka"; 
     string fullID = idONe.ToString() + middle + idTwo.ToString(); 
     var N_ID = fullID; 
     var N_Email = N_EmailAdd; 
     TourCenterDBEntities NewsLetterEntities = new TourCenterDBEntities(); 
     var existing = NewsLetterEntities.News_Letter.Where(l => l.N_Email == N_EmailAdd); 
     Debug.WriteLine(existing.Count()); 
     if (existing.Count() == 0) 
     { 
      News_Letter NewsLetterDetails = new News_Letter(); 
      NewsLetterDetails.N_id = N_ID; 
      NewsLetterDetails.N_Email = N_Email; 
      NewsLetterEntities.News_Letter.Add(NewsLetterDetails); 
      NewsLetterEntities.SaveChanges(); 
      //want to send success text 
     } 
     else 
     { 
      //want to send error text     
     } 
     return Json(new { }); 
    } 

wenn der Erfolg oder Fehler auf den gleichen _Layout.csthml zurück Seite. Wie kann ich das tun.Hoff deine Hilfe.

+0

Überprüfen Sie, ob dies Ihnen helfen kann: [Wie man eine Warnmeldung wie "erfolgreich eingefügt" nach dem Einfügen in DB mit ASp.net MVC3 anzeigt] (http://stackoverflow.com/questions/8063345/how-to-show-alert -message-like-erfolgreich-eingefügt-nach-einfügen-to-db-usi) – Shanid

Antwort

0

Sie können verwenden. Inhalt zurückgeben.

if (existing.Count() == 0) 
    { 
     News_Letter NewsLetterDetails = new News_Letter(); 
     NewsLetterDetails.N_id = N_ID; 
     NewsLetterDetails.N_Email = N_Email; 
     NewsLetterEntities.News_Letter.Add(NewsLetterDetails); 
     NewsLetterEntities.SaveChanges(); 

     //return Content("Your information saved successfully"); 
     return new JavascriptResult { Script = "alert('Your information saved successfully');" }; 
    } 
    else 
    { 
     //return Content("Already exist. Please choose another."); 
     return new JavascriptResult { Script = "alert('Your information saved successfully');" };     
    } 
+0

dann wie kann ich es in der Ansicht abrufen – bill

+0

Sie können JavascriptResult verwenden, um Ihrem Benutzer eine Warnung anzuzeigen. – bluetoothfx

+0

Welche Informationen möchten Sie @bill abrufen? – bluetoothfx

0
public ActionResult getNewsLetterMail(string N_id, string N_EmailAdd) 
{ 
    Session["Ealert"] = null; 
    Random random = new Random(); 
    int idONe = random.Next(99, 999); 
    int idTwo = random.Next(999, 9999); 
    string middle = "menuka"; 
    string fullID = idONe.ToString() + middle + idTwo.ToString(); 
    var N_ID = fullID; 
    var N_Email = N_EmailAdd; 
    TourCenterDBEntities NewsLetterEntities = new TourCenterDBEntities(); 
    var existing = NewsLetterEntities.News_Letter.Where(l => l.N_Email == N_EmailAdd); 
    Debug.WriteLine(existing.Count()); 
    string myMessage=""; 
    if (existing.Count() == 0) 
    { 
     News_Letter NewsLetterDetails = new News_Letter(); 
     NewsLetterDetails.N_id = N_ID; 
     NewsLetterDetails.N_Email = N_Email; 
     NewsLetterEntities.News_Letter.Add(NewsLetterDetails); 
     NewsLetterEntities.SaveChanges(); 
     myMessage="success!"; 
    } 
    else 
    { 
     myMessage="Failed!";     
    } 
    return Json(myMessage, JsonRequestBehavior.AllowGet); 
} 

In Ansichten können Sie jquery fügen Sie die Nachricht angezeigt werden soll. Im Folgenden finden Sie ein Beispiel zum Abrufen der Nachricht in Ansichten. Sie können die Namen in Ihrem Formular entsprechend bearbeiten.

`<script type="text/javascript"> 
    $(document).ready(function() { 
    $("#yourForm").submit(function (e) { 
     e.preventDefault(); 
     var valid = $("#yourForm").valid(); 
     if (valid) { 
      $.ajax({ 
      url: "/getNewsLetterMail", 
      type: "POST", 
      data: { 
        Name: $("#N_id").val(), 
        Email: $("#N_EmailAdd").val(), 
        }, 
        success: function (data) { 
         alert(data); 
         reset(); 
        } 
       }); 
      } 
     }); 
}); 
</script>' 
+0

wie Sie es in der Ansicht – bill

+0

abrufen Ich habe den Beitrag bearbeitet, um die jquery in Ansichten – samvietnam

0
public ActionResult getNewsLetterMail(string N_id, string N_EmailAdd) 
{ 
    Session["Ealert"] = null; 
    Random random = new Random(); 
    int idONe = random.Next(99, 999); 
    int idTwo = random.Next(999, 9999); 
    string middle = "menuka"; 
    string fullID = idONe.ToString() + middle + idTwo.ToString(); 
    var N_ID = fullID; 
    var N_Email = N_EmailAdd; 
    TourCenterDBEntities NewsLetterEntities = new TourCenterDBEntities(); 
    var existing = NewsLetterEntities.News_Letter.Where(l => l.N_Email == N_EmailAdd); 
    Debug.WriteLine(existing.Count()); 
    string myMessage=""; 
    if (existing.Count() == 0) 
    { 
     News_Letter NewsLetterDetails = new News_Letter(); 
     NewsLetterDetails.N_id = N_ID; 
     NewsLetterDetails.N_Email = N_Email; 
     NewsLetterEntities.News_Letter.Add(NewsLetterDetails); 
     NewsLetterEntities.SaveChanges(); 
     myMessage="success"; 
    } 
    else 
    { 
     myMessage="failed";     
    } 
    return Json(myMessage, JsonRequestBehavior.AllowGet); 
} 

aus Ihrer Sicht.

$.post('@Url.Action("getNewsLetterMail", "yourControllerName")', { N_id: N_id, N_EmailAdd: N_EmailAdd }).done(function (data) { 
if (data == "success") { 
       alert("Success!");      
} 
if(data== "failed") { 
       alert("Failed!");      
} 
} 
+0

sollte enthalten Ich mache den View-Teil innerhalb der

Verwandte Themen