HttpException: метод публичного действия «ListCheckListType» не найден на контроллере - PullRequest
0 голосов
/ 10 июля 2019

Я проверил все решения, но все еще не работает. Я получил частичную страницу просмотра на странице макета, и когда я запускаю только частичную страницу, она работает, но когда я запускаю другую страницу с макетом, она не работает.

Я надеюсь, что вы можете мне помочь

Вот моя модель:

    public CheckListType CheckListType { get; set; }
    public IEnumerable<SelectListItem> CheckListTypeList1 { get; set; }

И мой контроллер:

    public ActionResult ListCheckListType()
    {
        ControlListTypeModel listTypeModel = new ControlListTypeModel();
        List<SelectListItem> CheckListTypeList = new List<SelectListItem();
        foreach (CheckListType item in checklisttypeRepository.List().ProcessResult)
        {
            CheckListTypeList.Add(new SelectListItem { Value = item.CheckListTypeId.ToString(), Text = item.CheckListType1 });
        }
        listTypeModel.CheckListTypeList1 = CheckListTypeList;
        return PartialView("~/Areas/User/Views/CheckList/ListCheckListType.cshtml", listTypeModel);
    }

Просмотр:

    @using TodoListApp.Areas.User.Models.ViewModel
    @model ControlListTypeModel
 <form action="/CheckList/ListCheckListType" method="get">
 <div>
    CheckListType :
 </div>

 <div>
    @Html.DropDownListFor(modelitem=>modelitem.CheckListType.CheckListTypeId,Model.CheckListTypeList1)
    <button type="button" class="butt button bg-info" style="height:40px; width:98px;">Choose CheckListType</button>
</div>

Макет:

  <div class="container body-content">
    @Html.Action("ListCheckListType");

    @RenderBody(){
    }

    <hr />
    <footer>
        <p> @DateTime.Now.Year </p>
    </footer>
</div>

HttpException: метод публичного действия 'ListCheckListType' не найден на контроллере

1 Ответ

1 голос
/ 14 июля 2019

Проблема возникает из-за поиска действия ListCheckListType в неправильном контроллере при визуализации в частичном представлении. Указание имени контроллера также должно исправить исключение

@Html.Action("ListCheckListType", "Home"); //if action is in HomeController
...