Sono nuovo in C# e in modo esponenziale in ASP.NET MVC.RedirectToAction su un altro controller e parametri di passaggio
ho il mio HomeController, che contiene questo metodo:
public ActionResult Error(Error error)
{
return View(error);
}
Ora ho un altro controller, che hanno la seguente riga all'interno:
return RedirectToAction("Error","Home", new { Error = (new Error("ErrorName","ErrorDescription"))});
Come si può notare, sono cercando di passare un oggetto Error all'altro controller, che quindi dovrebbe passarlo alla vista.
La classe Error ho scritto da solo, niente di spettacolare:
public class Error
{
public String name { get; private set; }
public String description { get; private set; }
public int number { get; private set; }
public Error(String name, String description)
{
this.name = name;
this.description = description;
number = 0;
}
}
Il mio problema ist che ogni volta che tenta di accedere alla variabile errore nel HomeController, è null
. Ho già trovato su Google alcuni post, ma non capisco, perché il mio codice non funziona. Non ci sono errori, solo questo oggetto valore nullo .. Apprezzo qualsiasi aiuto! :)
Perché hai 'set' privata su tutte le proprietà (il' DefaultModelBinder' non può impostare le proprietà e anche necessario includere un costruttore senza parametri –
Sei. sicuro che si può passare un [oggetto serializzato] (http://stackoverflow.com/questions/7597863/passing-object-in-redirecttoaction) – lloyd