Более эффективно указывать местоположение вида непосредственно в MVC? - PullRequest
4 голосов
/ 07 декабря 2011

Я хочу, чтобы код работал максимально эффективно.У меня есть представления, которые расположены в таких местах, как:

~/Areas/Administration/Views/Accounts/Create.cshtml

Я хотел бы знать, чтобы кто-нибудь изучал, если более эффективно напрямую кодировать местоположение вида в действии, например:

return View("~/Areas/Administration/Views/Accounts/Create.cshtml", vm);

Если это не закодировано таким образом, то я считаю, что сначала он будет искать все следующие местоположения:

~/Areas/Administration/Views/Accounts/Create.aspx
~/Areas/Administration/Views/Accounts/Create.ascx
~/Areas/Administration/Views/Shared/Create.aspx
~/Areas/Administration/Views/Shared/Create.ascx
~/Views/Accounts/Create.aspx
~/Views/Accounts/Create.ascx
~/Views/Shared/Create.aspx
~/Views/Shared/Create.ascx
~/Areas/Administration/Views/Accounts/Create.cshtml

Ответы [ 2 ]

6 голосов
/ 07 декабря 2011

Не беспокойтесь об этом и никогда не задавайте жестко ваши места просмотра, как это.При работе в режиме Release ASP.NET MVC сохраняет эти расположения в кэше и не выполняет все эти дорогие поиски.

3 голосов
/ 07 декабря 2011

Сэм Саффрон исследовал влияние на производительность местоположения просмотра в сообщении в блоге.Два вывода:

  • при запуске сборки выпуска кэшируемые местоположения, поэтому на самом деле нет потери производительности
  • в режиме отладки, вы можете повысить производительность, удалив поддержку для механизмов просмотра, которыевы на самом деле не используете (например, WebForms)

Поэтому я поддерживаю предложение Дэрина о том, что жесткое кодирование мест просмотра просто доставит вам неудобства и не принесет выгоды в плане производительности, если вы делаете все остальное с помощью книги.

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