Appel d'une méthode d'action de mise en page ASP.NET MVC

J'ai une mise en page et une vue partielle qui sont dans le dossier Partagé. Vue partielle présente le top des éléments de menu qui ne sont pas statiques. J'ai donc besoin de faire appel à une méthode d'action pour obtenir des éléments de menu à partir de la base de données. Pour ce faire, j'ai créé un contrôleur et d'ajouter une méthode d'action.

Quand j'essaie de parcourir la page dans un navigateur web, cette erreur s'est produite:

Le contrôleur pour le chemin '/' n'a pas été trouvé ou n'est pas de mettre en œuvre IController.

Remarque:
J'ai essayé le code Html.RenderAction, Html.Méthodes partielles trop...
Et j'ai essayé de créer un autre dossier de vue, et de créer une nouvelle vue partielle et le nouveau contrôleur nommé "nom du dossier + Contrôleur" suffixe.

Mise en page:

<!DOCTYPE html>
<html>
<head>
    <title>@ViewBag.Title</title>
</head>
<body>
    <div id="header">
        @Html.Action("~/Views/Shared/_TopMenu.cshtml", "LayoutController", new {area =""}); //Here is the problem.

    </div>
   <div>
        @RenderBody();
   </div>

</body>
</html>

_TopMenu.cshtml:

@model IList<string>

@foreach (string item in Model)
{
    <span>item</span>
}

LayoutController (dans le dossier Controllers):

 public class LayoutController : Controller
    {
        //
        //GET: /Shared/
        public ActionResult Index()
        {
            return View();
        }

        [ChildActionOnly]
        [ActionName("_TopMenu")]
        public ActionResult TopMenu()
        {
           IList<string> menuModel = GetFromDb();
           return PartialView("_TopMenu", menuModel);
        }    
    }

OriginalL'auteur Uğur Aldanmaz | 2014-10-29