Ricerca…


Sintassi

  • // Il metodo ActionResult restituisce un'istanza che deriva da ActionResult. È possibile creare un metodo di azione che possa restituire qualsiasi istanza racchiusa nel tipo ActionResult appropriato.

  • // I tipi di ritorno ActionResult incorporati sono:

  • Vista(); // ViewResult esegue il rendering di una vista come pagina Web

  • PartialView (); // PartialViewResult esegue il rendering di una vista parziale, che può essere utilizzata come parte di un'altra vista.

  • Reindirizzare(); // RedirectResult reindirizza a un altro metodo di azione utilizzando il relativo URL.

  • RediectToAction (); RedirectToRoute (); // RedirectToRouteResult reindirizza a un altro metodo di azione.

  • Soddisfare(); // ContentResult restituisce un tipo di contenuto definito dall'utente.

  • JSON (); // JsonResult restituisce un oggetto JSON serializzato.

  • JavaScript (); // JavaScriptResult restituisce uno script che può essere eseguito sul lato client.

  • File(); // FileResult restituisce un output binario per scrivere sulla risposta.

  • // EmptResult rappresenta un valore di ritorno che viene utilizzato se il metodo action deve restituire un risultato nullo.

Metodi d'azione

Quando l'utente inserisce un URL, ad esempio: http://example-website.com/Example/HelloWorld , l'applicazione MVC utilizzerà le regole di routing per analizzare questo URL ed estrarre il sottotracciato, che determinerà il controller, l'azione e i possibili parametri. Per l'url precedente, il risultato sarà / Example / HelloWorld, che per impostazione predefinita i risultati delle regole di routing fornisce il nome del controller: Exmaple e il nome dell'azione: HelloWorld.

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

Il metodo ActionResult di cui sopra "HelloWorld" renderizzerà la vista chiamata HelloWorld, dove possiamo quindi utilizzare i dati di ViewData.

Mappatura dei parametri del metodo di azione

Se ci fosse un altro valore nell'URL come: / Example / ProcessInput / 2, le regole di routing minacceranno l'ultimo numero come parametro passato nell'azione ProcessInput del controller Example.

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

Chiamare un'azioneRisultare in un'altra azioneRisultato

Possiamo chiamare un risultato di un'azione in un altro risultato di azione.

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
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow