Ускоритель Azure для веб-ролей и службыHostingEnvironment aspNetCompatibilityEnabled = "true" - PullRequest
0 голосов
/ 15 сентября 2011

Я не уверен, относится ли эта проблема к Accelerator для веб-ролей (WAAWR: http://waawebroles.codeplex.com/)

Редактировать : Я подтвердил, что эта ошибка появляется только в моем приложении WAAWR - если я разверну тот же код, что и в автономной веб-ролевой программе, эта ошибка не будет выдана.

Я пытаюсь запустить WCF Routing / clean url для приложения, которое развертывается через WAAWR. Для этой функции требуется режим совместимости asp .net. Вот мой раздел конфигурации:

   <system.serviceModel>
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true">
      <baseAddressPrefixFilters>
        <add prefix="http://api.mydomain.com"/>
      </baseAddressPrefixFilters>
    </serviceHostingEnvironment>
    <standardEndpoints>
      <webHttpEndpoint>
        <standardEndpoint name="" helpEnabled="true" automaticFormatSelectionEnabled="true"/>
      </webHttpEndpoint>
    </standardEndpoints>
   </system.serviceModel>

Я застрял на этой ошибке в течение нескольких часов:

System.IO.FileLoadException: Имя файла: ? \ \ C: \ Resources \ Каталог \ XXXXXXXXXXXXXXXXXXXXXXX \ web.config Номер строки: 74 Ошибка: этот раздел конфигурации не может быть использован в этот путь. Это происходит, когда раздел заблокирован на родительском уровне. Блокировка по умолчанию (overrideModeDefault = "Deny") или установлена явно с помощью тега местоположения с помощью overrideMode = "Deny" или устаревшего AllowOverride = "ложь". в Microsoft.Web.Administration.Interop.IAppHostAdminManager.GetAdminSection (String bstrSectionName, String bstrPath) в Microsoft.Web.Administration.WebConfigurationManager.GetSectionInternal (String siteName, String virtualPath, String sectionPath, Тип sectionType)

Сначала я подумал, что приложения, которые вы развертываете через хост веб-роли, были подкаталогами / виртуальными каталогами, поэтому я бросил эту конфигурацию в файл .config самого приложения хоста развертывания, но это не помогло. , Я удаленно подключился к рабочему столу, чтобы посмотреть, что происходит, и похоже, что каждое приложение, развернутое через хост, является отдельным приложением под IIS. Кроме того, когда вы просматриваете приложение из диспетчера IIS, приложения не находятся на том же диске, что и узел развертывания. Поэтому я не уверен, почему выдается эта ошибка.

Есть какие-нибудь идеи?

1 Ответ

1 голос
/ 16 сентября 2011

Нашел мой ответ здесь:

http://cennest.wordpress.com/2010/09/20/azure-tip-wcf-4-0-servicerouting-in-azure/

Не уверен, почему это работает, найдите с нормальной ролью, и вы должны добавить объявление раздела для дочернего приложения - но рад, что оно работает!

...