Sök…


Syntax

  • // ActionResult-metoden returnerar en instans som härrör från ActionResult. Du kan skapa en handlingsmetod som kan returnera alla instanser som är inslagna i lämplig ActionResult-typ.

  • // Inbyggda ActionResult-returtyper är:

  • Se(); // ViewResult visar en vy som en webbsida

  • PartialView (); // PartialViewResult ger en delvis vy som kan användas som en del av en annan vy.

  • Dirigera om(); // RedirectResult omdirigerar till en annan åtgärdsmetod med sin URL.

  • RediectToAction (); RedirectToRoute (); // RedirectToRouteResult omdirigerar till en annan åtgärdsmetod.

  • Innehåll(); // ContentResult returnerar en användardefinierad innehållstyp.

  • Json (); // JsonResult returnerar ett serialiserat JSON-objekt.

  • JavaScript (); // JavaScriptResult returnerar ett skript som kan köras på klientsidan.

  • Fil(); // FileResult returnerar en binär utgång för att skriva till svaret.

  • // EmptResult representerar ett returvärde som används om åtgärdsmetoden måste returnera ett nullresultat.

Åtgärdsmetoder

När användaren anger en URL, till exempel: http://example-website.com/Example/HelloWorld , kommer MVC-applikationen att använda rutningsreglerna för att analysera denna url och extrahera undervägen, som kommer att bestämma styrenheten, åtgärden och möjliga parametrar. För ovanstående url kommer resultatet att vara / Exempel / HelloWorld, som som standard ruttningsreglerresultat ger kontrollerns namn: Exmaple och namnet på åtgärden: HelloWorld.

public class ExampleController: Controller
{
    public ActionResult HelloWorld()
    {
        ViewData["ExampleData"] = "Hello world!";
        return View();
    }
}

Ovanstående ActionResult-metod "HelloWorld" kommer att göra den vy som heter HelloWorld, där vi sedan kan använda data från ViewData.

Kartlägga åtgärdsmetodparametrar

Om det skulle finnas ett annat värde i URL: en: / Exempel / ProcessInput / 2 kommer routingsreglerna att hota det sista numret som en parameter som skickas till åtgärden ProcessInput i controllerexempel.

public ActionResult ProcessInput(int number)
{
    ViewData["OutputMessage"] = string.format("The number you entered is: {0}", number);
    return View();
}

Calling An ActionResult I Another ActionResult

Vi kan kalla ett åtgärdsresultat i ett annat handlingsresultat.

public ActionResult Action1()
{
    ViewData["OutputMessage"] = "Hello World";
    return RedirectToAction("Action2","ControllerName");
    //this will go to second action;
}


public ActionResult Action2()
{
    return View();
    //this will go to Action2.cshtml as default;
}


Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow