Ошибка приложения Asp.net с Sitecore 6.4.1 - PullRequest
2 голосов
/ 07 сентября 2011

У меня есть Sitecore в качестве корня сайта (который работает нормально), и под ним мне нужно запустить несколько приложений asp.net.

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

Compilation Error 
Description: An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately. 

Compiler Error Message: CS0246: The type or namespace name 'Sitecore' could not be found (are you missing a using directive or an assembly reference?)

Source Error:



Line 3264:          </providers>
Line 3265:      </roleManager>
Line 3266:      <profile defaultProvider="sql" enabled="true" inherits="Sitecore.Security.UserProfile, Sitecore.Kernel">
Line 3267:          <providers>
Line 3268:              <clear/>

Кажется, что дочернее приложение asp.net наследует настройки Sitecore, которые приходят из Sitecore web.config.

Есть идеи?

Ответы [ 2 ]

1 голос
/ 07 августа 2014

Этот ответ похож на Ян, но достаточно отличается для отдельного ответа.Надеюсь, это поможет.

Зайдите в IIS и выберите Приложение для детей.Выберите Модули.Удалите все присутствующие модули, связанные с Sitecore.Не волнуйтесь, родительское приложение Sitecore все равно сохранит эти модули.Sitecore modules in IIS

Когда вы делаете это, вы фактически изменяете дочернее приложение web.config, поэтому вы увидите элементы, удаленные в файле web.config, вот так.Вам также может потребоваться очистить некоторые другие унаследованные настройки.

<profile enabled="false"><providers><clear/></providers></profile>
<roleManager enabled="false"><providers><clear /></providers></roleManager>
1 голос
/ 07 сентября 2011

Это должно быть возможно. Вам нужно создать web.config для этого приложения, не принадлежащего Sitecore, в виртуальном каталоге и перезаписать разделы в <system.web> и <system.webserver>, которые ссылаются на классы Sitecore. Это включает в себя:

  • httpModules / httpHandlers (для этого вы должны «удалить все» и добавить те из этого веб-приложения)
  • раздел безопасности (вернуть классы провайдера ASP.NET по умолчанию)
  • в главном Sitecore web.config добавьте путь этого веб-приложения в IgnoreUrlPrefixes , чтобы Sitecore знал, что он не должен обрабатывать запросы к

Это может быть что-то еще, но вы должны получить общее представление.

...