Error : Code blocks are not allowed in this file

ApplicationPage и SitePage

В SharePoint есть два типа страниц: ApplicationPage и SitePage. ApplicationPage располагаются в папке LAYOUTS (%ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\LAYOUTS), что соответствует виртуальной папке _layouts в IIS. SitePage может быть представлена как в виде страницы веб-частей (Web Parts page), так и в виде обычный страниц (Standart page).

Блоки кода

На страницах SitePage запрещено использовать блоки кода (<% [code] %>, <script runat="server"> [code] </script>). И SharePoint выбросит исключение: Code blocks are not allowed in this file
Блоки кода запрещены в этом файле

Для указания страниц, использование блоков кода в которых разрешено, надо заполнить раздел PageParserPaths в конфигурационном файле вашего веб-приложения (web.config):

<configuration>
 <configSections>
  <SharePoint>
   <SafeMode>
    <PageParserPaths>
     <PageParserPath
       VirtualPath="/gallery/*"
       CompilationMode="Always"
       AllowServerSideScript="true"
       IncludeSubFolders="true" />
    </PageParserPaths>
   </SafeMode>
  </SharePoint>
 </configSections>
<configuration>

CompilationMode - режим компиляции страниц (Always [по умолчанию], Auto, None)
Назначение остальных параметров в пояснении не нуждается.

Теги

Поделиться

Виталий Жуков

Виталий Жуков

Техлид, Архитектор, Разработчик, Microsoft MVP. Более 20 лет опыта в области системной интеграции и разработки программного обеспечения. Специализируюсь на проектировании и внедрении масштабируемых высокопроизводительных программных решений в различных отраслях.