2017-12-11 1 views
0

Ich benutze JQuery und rufe die Controller-Methode auf, um Text in der Beschriftung anzuzeigen.Aufruf der Controller-Methode und Anzeige des Rückgabewerts

Hier ist mein Code-

Controller-Methode

public string GetText(int number) 
{ 
    string txt = number.ToString(); 
    return txt; 
} 

Auf cshtml Seite

@Html.Label(((MyController)this.ViewContext.Controller).GetText(1234)) 

Aber hier wird der Text nicht in der Bezeichnung angezeigt wird.
Kann mir jemand sagen, was ich hier falsch mache.

+0

Dies ähnelt dem, was Sie hier erreichen möchten: https://stackoverflow.com/questions/6302285/how-to-display-dynamic-text-to-html-lable-from-controller – danish

+0

@danish Aber hier möchte ich einen Parameter mit der Funktion senden. Wie kann ich dies erreichen – Aparna

+0

@Aparna: Version von ASP.NET MVC? – Thulasiram

Antwort

0

Ich hatte festgestellt, dass "GetText" nicht den Breakpoint mit Ihrem Code zum ersten Mal erreicht.

Hinzugefügt den folgenden Code führen Sie es, dann die Änderungen an Ihrem Code dann funktioniert gut für mich.

@{ 
    var valueText =((MyController)this.ViewContext.Controller).GetText(1234); 
} 

@Html.Label(valueText) 
@Html.Label(((MyController)this.ViewContext.Controller).GetText(1234)) 

  1. Wenn "GetText" Methode hat einige einfache Logik, ohne DB-Aufruf, die wir Methoden Benutzerdefinierte HTML-Helfer verwenden können, http://www.c-sharpcorner.com/UploadFile/3194c4/custom-html-helpers-in-mvc/

  2. Wenn es möglich ist, erhalten "number" -Wert während der Hauptsteuerungsaktion selbst, dann ViewBag/TempData verwenden oder Eine weitere Eigenschaft erstellen,

    Anruf dieser Code in Hauptsteuerung,

    ViewBag.Number = GetText (vm.Property2); ODER vm.Property2 = GetText (vm.Property2); @ Html.Label (ViewBag.Number OR Model.Property2)

  3. @ Html.Action/@ Html.RenderAction & Teilansicht. Hier finden Sie den untenstehenden Link,

    http://www.c-sharpcorner.com/article/html-action-and-html-renderaction-in-Asp-Net-mvc/

  4. Es ist auch möglich, durch jQuery AJAX auch.

Bitte lassen Sie mich im Falle von Problemen oder Bedenken wissen.

+0

Die Anforderung ist ziemlich einfach. Gibt es eine Möglichkeit, meinen aktuellen Code zu ändern? Was ist da falsch? Die Funktion GetText() gibt einen Wert zurück, zeigt ihn aber nicht an. – Aparna

+0

@Aparna: Aktualisieren Sie die Antwort Post ... – Thulasiram

+0

@Aparna: Ich hatte festgestellt, dass "GetText" nicht den Breakpoint mit Ihrem Code zum ersten Mal zu schlagen ... – Thulasiram

Verwandte Themen