Я обнаружил, что во время загрузки главной страницы создается несколько контроллеров (я думаю, потому что главная страница состоит из нескольких частей). Контроллеры создают экземпляры классов API для запроса некоторых данных через них. Мне было интересно, как и где я мог бы использовать один и тот же экземпляр класса API между ними.
Я могу представить себе такой код:
class HomeController : Controller
{
private MyApi Api;
public HomeController()
{
this.Api = get the pervious MyApi instance form somewhere
if (this.Api == null) // 1st time
{
this.Api = new MyApi();
put this instance to somewhere to share between controllers
}
Это "где-то" не является сессией, потому что для загрузки следующей страницы нужен другой экземпляр MyApi. Он должен перейти к свойству объекта, которое остается неизменным в течение всего процесса загрузки страницы, но отклоняется при генерировании html-результата. Должно быть, это действительно простая вещь, но я действительно не знаю, где это :( Может ли кто-нибудь мне помочь?