ASP.NET MVC - la référence d'Objet n'est pas définie à une instance d'un objet

J'ai récemment pris plus de l'appui d'une ASP.NET projet MVC, et suis en train de travailler à travers certaines de ces erreurs, l'une en particulier m'a déconcerté si.

Nous avons une "Nouvelle page" pour ajouter de nouveaux éléments, avec le code suivant en cours d'exécution lorsque la page est affichée:

[HttpPost]
public ActionResult New(RecordView i)
{
    if(ModelState.IsValid)
    {
        repository.AddRecord(i.DogIncident);

        return View("Index");
    }
    return View("Index");
}

Toutefois, lorsqu'il essaie de charger la vue Index, j'obtiens l'erreur suivante: "la référence d'Objet n'est pas définie à une instance d'un objet". et il pointe vers le bloc de code suivant en haut d'un fichier appelé RecordsView.cshtml:

@for (var i = 0; i < Model.Records.Count; i++)

L'enregistrement n'ajouter correctement, il n'a tout simplement pas de charger les listes de la page correctement, et puisque c'est juste un "nice to have" je pensais simplifier les choses en changeant de sorte qu'elle renvoie un texte qui génère une erreur car il s'attend à un booléen retourné.

Toutes les idées sur la façon de résoudre ce problème s'il vous plaît? Je suis perplexe.

Merci!

  • Vous essayez d'accéder à un modèle de votre point de vue, mais vous n'êtes pas la réussite de tous.
  • Vous n'êtes pas le passage d'un modèle lors de l'appel de retour à la Vue("Index"); vous avez besoin de quelque chose comme le retour à la Vue("Index", someModel);
  • Merci à vous, pardonnez mon ignorance, mais je suis de l'importation de mes modèles avec l 'aide de' instruction dans la partie supérieure de la page, et je veux inclure un appelé " Foo " par exemple, je veux faire Afficher("Index", Foo) ? c'est juste que c'est la génération d'une erreur pour moi
  • créer un nouvel objet de type Foo: return View("Index", new Foo());.
InformationsquelleAutor Nick | 2014-01-09