Частичное повторное использование с контроллером в asp MVC
Я нахожу много вопросов и ответов по этой теме, но не исчерпывающим.
Мне нужно простое частичное представление, которое получает параметр int, передает его контроллеру, который запрашивает базу данных, получает всю информацию о записи и передает ее для просмотра для ее визуализации.
также в представлении должна быть кнопка для генерации отчета пользователю (через iTextSharp)
Мне нужно использовать это частичное представление на многих страницах.
Это часть моего фактического контроллера частичного просмотра
Public class TitleBarController : Controller
{
private IUnitOfWork uow;
// GET: MVC/TitleBar
public ActionResult Index(int idAttivita)
{
TitleBarViewModel tbVM = Mapper.Map<Attivita, TitleBarViewModel>(uow.Attivita.Read(idAttivita));
return View(tbVM);
}
public TitleBarController(IUnitOfWork uow)
{
this.uow = uow;
}
}
вот как я вставляю частичное представление в главное представление:
@Html.Partial("_TitleBarView", new ViewDataDictionary { { "idAttivita", 1 } });)
и это первая часть частичного просмотра:
@model ProgettoAttivitaUI.Areas.MVC.Controllers.Shared.TitleBar.TitleBarViewModel
<div>
<h4>Prova</h4>
<hr />
<dl class="dl-horizontal">
<dt>
Codice attività
</dt>
<dd>
@Html.DisplayFor(model => model.IdAttivita)
</dd>
<dt>
@Html.DisplayNameFor(model => model.Descrizione)
</dt>
<dd>
@Html.DisplayFor(model => model.Descrizione)
</dd>
</dl>
</div>
но когда я открываю его главное представление, частичное представление отображается, но без данных, отлаживая его, я вижу, что его конструктор контроллера и метод индекса не запускаются