Вы можете попросить действие контроллера вернуть ViewComponent. Вот демонстрация работала:
HomeController:
public IActionResult TestButton()
{
return View();
}
public IActionResult ReturnViewComponent() {
List<notes> list = new List<notes> { new notes { Id = "1", Notes = "note1", LastModifedDate = "2020/01/01", LastModifiedBy = "Joy" }, new notes { Id = "2", Notes = "note2", LastModifedDate = "2020/01/02", LastModifiedBy = "Tommy" }, new notes { Id = "3", Notes = "note3", LastModifedDate = "2020/01/03", LastModifiedBy = "Jay" } };
return ViewComponent("Notes", list);
}
ViewComponents / Notes.cs:
public class Notes:ViewComponent
{
public async Task<IViewComponentResult> InvokeAsync(List<notes> list)
{
return View(list);
}
}
Расположение компонента View: Просмотры / Главная / Компоненты / Примечания / default.cs html
Просмотры / Home / TestButton.cs html:
<h1>TestButton</h1>
<div>
<a asp-action="ReturnViewComponent" class="btn btn-secondary btn-block"><i class=" fa fa-table"></i>Back to List</a>
</div>
Результат: введите описание изображения здесь