0

次のような構造のリンクを含むナビゲーション メニューがあります。

<div class="childLinkGroup">
    <div class="headerLink">@Html.ActionLink("Engine Products", null, "EngineProducts", null, null)</div>
    <ul>
        <li>@Html.ActionLink("Perkins Engines", "PerkinsEngines", "EngineProducts", null, null)</li>
        <li>@Html.ActionLink("Isuzu Engines", "IsuzuEngines", "EngineProducts", null, null)</li>
        <li>@Html.ActionLink("FPT PowerTrain", "FPTPowerTrain", "EngineProducts", null, null)</li>
        <li>@Html.ActionLink("Mitsubishi Engines", "MitsubishiEngines", "EngineProducts", null, null)</li>
    </ul>
</div>

そしてコントローラクラスでは:

// GET: /EngineProducts/
public ActionResult Index()
{
    return View(ModelData);
}

//
// GET: /EngineProducts/PerkinsEngines
public ActionResult PerkinsEngines()
{
    ModelData.MenuCategories.Where(x => x.Action == "PerkinsEngines").FirstOrDefault().Active = true;

    return View("Perkins Engines", ModelData);
}

ホームページからアクセスすると、これらはすべて正常に機能します。

既に のような子ページにいて/EngineProducts/IsuzuEngines、別の親レベルのリンクにアクセスしようとすると/TransmissionProductsIsuzuEnginesがリンクに残っているため、ページが見つかりません。

希望URL:/TransmissionProducts

実際の URL: /TransmissionProducts/IsuzuEngines

のオーバーライドがたくさんありHtml.ActionLink、それらを調べてみると、見栄えの良い別のパラメーターのセットが表示されません。

4

1 に答える 1