0
Je rends un widget de menu à l'intérieur de l'en-tête d'une présentation principale.Html.Action rend le menu partiel à l'intérieur avec différentes routes de liens
_Layout.cshtml
@Html.Action("Menu", "Menu", new { area = "Application" })
FullMenu.cshtml
<div class="navbar-collapse collapse">
<ul class="nav navbar-nav">
<li><a href='#'><span class='glyphicon glyphicon-education'></span></a></li>
<li>@Html.ActionLink("Projects", "Index")</li>
<li>@Html.ActionLink("Tests", "Index" })</li>
</ul>
@Html.Partial("_LoginPartial")
</div>
MenuController.cs
public class MenuController : Controller
{
[ChildActionOnly]
public ActionResult Menu()
{
string controller = (string) ControllerContext.ParentActionViewContext.RouteData.Values["controller"];
if (controller == "Projects")
{
return PartialView("StartMenu");
}
else
return PartialView("FullMenu");
}
}
T son est la sortie rendue dans le navigateur
Pourquoi le rendu des hyperliens un nom de contrôleur modifié? Encore plus ces liens appliqués le nom du contrôleur du widget lui-même => "Menu" Pourquoi est-ce?
Essayez @ Html.ActionLink ("Projets", "Index", "Projets") dans votre FullMenu.cshtml –
ok ces liens ont travaillé avant , puisque je les mets dans le "widget" je dois déclarer l'itinéraire complet:
Content de t'avoir aidé –