je tentais de le faire:Redéfinition contenu sans RenderBody utilisateur redirection dans MVC3
<body>
<div id="Page">
<div id="TopBar">
<div id="TopBarLogo">
<img src="@Url.Content("~/Content/images/Weblogo.png")" />
</div>
<div>
@{ Html.RenderAction("MenuPartial", "MenuPartial"); }
</div>
</div>
<div class="Content">
@if (SessionWrapper.IsAuthenticated)
{
@RenderBody()
}
else
{
Html.RenderPartial("AccessDeniedPartial");
}
</div>
</div>
</body>
</html>
Mais ce ofc n'est pas autorisé, comme je dois avoir @RenderBody() ou une exception se produit. Le problème est que cette solution aurait été si soignée, je veux encore rendre la partie supérieure de la page, mais je voudrais substituer le contenu sauf si l'utilisateur est connecté.
La seule autre solution que je peux penser de est de faire la vérification dans le contrôleur et retourner une autre vue. Le problème avec cela est que je devrais répéter ce code dans chaque contrôleur qui me rend triste.
Existe-t-il un moyen de remplacer globalement le contenu similaire à ci-dessus, sans rediriger l'utilisateur vers une autre URL? Si oui, pourriez-vous me donner un coup de pouce dans la bonne direction? Je semble être un peu coincé dans mon état d'esprit actuel. Je n'utilise pas les classes de sécurité Microsoft par défaut (FormsAuthentication), je ne suis pas capable de le faire dans ce cas.
Merci.