Un moyen propre de retourner une vue partielle mvc vide
Dans cshtml fichier, basé sur une condition, quelle est la meilleure façon de retourner un vide partialview ?
Maintenant j'ai:
@if(Model.Count() > 0)
{
loooonng partial view block of markup code
}
Comment puis-je re-faire pour regarder nettoyeur de plus près à ceci:
@if(Model.Count() == 0)
{
render an empty partial view
}
loooonng partial view block of markup code goes here <- This will obviously get executed only if Model.Count() > 0
Merci d'avance !
source d'informationauteur Shenaniganz
Vous devez vous connecter pour publier un commentaire.
J'ai été en utilisant
et fonctionne bien.
Vous ne savez pas si vous avez encore besoin d'une réponse, mais je suis tombé sur ce problème et voici ce que j'ai fait dans la vue:
Sur un Contrôleur de niveau, j'ai créé une nouvelle classe et l'a retourné dans mon action:
Si vous êtes de retour d'une
PartialViewResult
je l'ai trouvé dans le contrôleur, vous pouvez utiliserou
sans aucun problème. La seule contrepartie que je peux penser est que si vous utilisez
de votre point de vue, alors vous aurez besoin pour vérifier la valeur null.
Html.RenderAction
semble accepter sans problème.Utilisation EmptyResult classe:
Vue ne devrait pas décider si elle doit être vide ou contenir quelque chose. Une vue doit être aussi "stupide" que possible, simplement en affichant les données à partir du modèle dans une "fantaisie". C'est au contrôleur de décider si la sortie doit être vide ou contenir des données à afficher. En d'autres termes, c'est le contrôleur pour revenir à un affichage vide ou non vide de vue.
Solution
Créer une vue vide (vide *.cshtml fichier) dans Views/Shared:
Contrôleur de code: