В чем разница между разделом конфигурации страницы с и без pageBaseType - PullRequest
4 голосов
/ 08 ноября 2011

Я использую Razor для всех своих веб-страниц. В моем глобальном web.config у меня есть следующее:

 <system.web>
    <pages>
      <namespaces>
        <add namespace="System.Web.Helpers" />
        <add namespace="System.Web.Mvc" />
        <add namespace="System.Web.Mvc.Ajax" />
        <add namespace="System.Web.Mvc.Html" />
        <add namespace="System.Web.Routing" />
        <add namespace="System.Web.WebPages" />
      </namespaces>
    </pages>
  </system.web>

В моем локальном (для просмотра) файле web.configs:

  <system.web.webPages.razor>
    <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    <pages pageBaseType="System.Web.Mvc.WebViewPage">
      <namespaces>
        <add namespace="System.Web.Mvc" />
        <add namespace="System.Web.Mvc.Ajax" />
        <add namespace="System.Web.Mvc.Html" />
        <add namespace="System.Web.Routing" />
        <add namespace="MyApp.WebUx.Helpers" />
        <add namespace="MyApp.Storage.Models" />
      </namespaces>
    </pages>
  </system.web.webPages.razor>

Я хочу сделать вещи максимально эффективными и чистыми, поэтому мне нужен первый из них или достаточно только бритвенного участка?

1 Ответ

0 голосов
/ 08 ноября 2011

Эти пространства имен требуются, если вы используете какие-либо классы в своих представлениях из этих сборок.По сути, это глобальные операторы include / using для каждого представления, которое имеет базовый тип страницы System.Web.Mvc.WebViewPage.

. Если вы удалите их, вам придется вручную импортировать пространство имен сборки.См. этот пост о том, как.

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