ASP.NET MVC PartialView avec la Liste
Je suis à mon premier projet MVC. Je veux créer une page avec un en-tête et dans cet en-tête pour être placé à une vue partielle de la catégorie de la liste.
C'est ce que j'ai fait jusqu'à présent:
J'ai créé la page principale (_Home.cshtml). Que dans le dossier Partagé, j'ai créé un point de Vue (de la Catégorie.cshtml). Voir ma photo.
Ma Catégorie.cshtml contenu:
@model IEnumerable<ArtSchool.Models.Category>
<p>
@Html.ActionLink("Create New", "Create")
</p>
<table>
<tr>
<th>
@Html.DisplayNameFor(model => model.Name)
</th>
<th>
@Html.DisplayNameFor(model => model.Visible)
</th>
<th></th>
</tr>
@foreach (var item in Model) {
<tr>
<td>
@Html.DisplayFor(modelItem => item.Name)
</td>
<td>
@Html.DisplayFor(modelItem => item.Visible)
</td>
<td>
@Html.ActionLink("Edit", "Edit", new { id=item.ID }) |
@Html.ActionLink("Details", "Details", new { id=item.ID }) |
@Html.ActionLink("Delete", "Delete", new { id=item.ID })
</td>
</tr>
}
Mon maître de fichier de page:
@{
Layout = null;
}
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>_Home</title>
</head>
<body>
<div>
@Html.Partial("ASCX/Header")
@Html.Partial("Category")
@RenderBody()
</div>
Quand je lance le projet, j'ai l'erreur:
Je sais que c'est une question de newbie, mais c'est mon premier projet MVC.
Merci!
Vous devez passer une
qu'avez-vous fait dans vos actions?? vous devez vous rendre vue partielle de votre contrôleur
Êtes-vous sûr? Dans mon projet, je n'ai plus rien, il a montré. Je ne suis pas la transmission des données supplémentaires,l'appel de controler,de retour partiel et tout fonctionne
est votre vue partielle fortement typé? Si oui, alors toute référence à la
Oui. Dans mon vs fortement typé est par défaut. Il n'y a pas de case à cocher créer fortement Typé, etc
Model
avec cet appel @Html.Partial("Category")
. Vous devez appeler un Contrôleur/Action dans lequel ce modèle est généré et ensuite de retour à l'partielle.qu'avez-vous fait dans vos actions?? vous devez vous rendre vue partielle de votre contrôleur
Êtes-vous sûr? Dans mon projet, je n'ai plus rien, il a montré. Je ne suis pas la transmission des données supplémentaires,l'appel de controler,de retour partiel et tout fonctionne
est votre vue partielle fortement typé? Si oui, alors toute référence à la
Model
donnera la même erreur.Oui. Dans mon vs fortement typé est par défaut. Il n'y a pas de case à cocher créer fortement Typé, etc
OriginalL'auteur POIR | 2014-02-12
Vous devez vous connecter pour publier un commentaire.
Si vous voulez interpréter ces partiels comme statique des sections à l'intérieur de votre code HTML, alors je vous suggère d'appeler
Html.Action()
qui renvoie vos partiels:HomeController
OriginalL'auteur Cristian E.
Solution 1
Si vous souhaitez utiliser la vue partielle, vous devez passer du modèle à cette fonction d'aide de cette façon
avant de passer à ce modèle, vous devez le remplir avec des données.
Solution 2
aussi, vous pouvez utiliser @Html.Méthode d'Action() avec le nom de ActionResult méthode qui sera de retour partiel de la vue pour vous.
par exemple:
OriginalL'auteur xurca