Почему действие контроллера asp.net mvc запускается несколько раз (изображения и т. Д.), Если я делаю его асинхронным? - PullRequest
0 голосов
/ 22 марта 2011

В обоих контекстах один и тот же код, одно и то же приложение, одни и те же маршруты, отличаются только действия контроллера.

контекст 1: синхронный контроллер - вызывается один раз

    public void Index(string parameters)
    {
          // called only once
    }

контекст 2: действия асинхронного контроллера - вызывается много раз

    public void IndexAsync(string parameters)
    {
         //   called many times (per image etc on the page)
    }

    public ActionResult IndexCompleted()
    {
        return null;
    }

мой вопрос,

Кто-нибудь понимает / знает, почему одни и те же маршруты / действия получают все дополнительные запросы, когда я делаю действие контроллера асинхронным ..?

любая помощь будет очень признательна,

спасибо,

J.

1 Ответ

0 голосов
/ 22 марта 2011

Запустите Fiddler и посмотрите, как запрашиваются изображения в обоих случаях. Если они подходят один раз для синхронного метода и браузер, то понимает, что может кэшировать это изображение или нет. Являются ли комбинации URL / Параметры одинаковыми в асинхронном методе синхронизации?

Пожалуйста, опубликуйте ответы здесь о том, что вы видите с Fiddler, если можете. Если вы скачаете демо-проект на http://msdn.microsoft.com/en-us/library/ee728598.aspx, то же самое произойдет с вами? Я не собираюсь, что заставляет меня думать, что это проблема кеширования (с макушки головы).

Я знаю, что вы упомянули выше "одинаковые маршруты", но в обоих случаях параметры одного и того же маршрута и ?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...