Интересно, что лучше всего подходит для этого сценария:
У меня есть сайт Sharepoint (MOSS2007) со страницей ASPX. Однако я не могу использовать какой-либо встроенный источник, и такие вещи, как обработчики событий, не работают, потому что Sharepoint не разрешает сценарии на стороне сервера на страницах ASPX по умолчанию.
Два решения:
Измените PageParserPath в web.config согласно этот сайт
<PageParserPaths>
<PageParserPath VirtualPath = "/pages/test.aspx"
CompilationMode = "Always" AllowServerSideScript = "true" />
</PageParserPaths>
Создайте все элементы управления и подключите их к событиям в файле .CS, тем самым полностью исключив некоторые преимущества ASP.net.
Интересно, что было бы лучше всего? Номер один выглядит так, как будто это правильный выбор, но изменение web.config - это то, что я хочу экономно использовать, когда это возможно.





Что делает страница ASPX? Какие функции он добавляет? Как вы добавляете страницу на сайт? Судя по всему, это просто «страница веб-частей» в библиотеке документов.
Мне нужно было бы провести небольшое исследование, чтобы быть на 100%, но я понимаю, что встроенный код в порядке, если он находится на странице, которая остается призрачной и, следовательно, надежной. Можете ли вы добавить свою функциональность на сайт с помощью функции?
Я бы избегал варианта 1, который мне кажется плохим советом. Разрешение серверного кода на вашей странице представляет собой угрозу безопасности, поскольку в этом случае кто-то может внедрить вредоносный код. Конечно, вы можете защитить страницу, но мы говорим об удаленном выполнении с довольно серьезными разрешениями.
Ну, это страница, на которой размещены пользовательские элементы управления. Это настраиваемая страница .aspx, которая будет создана на сайте, особенно потому, что я не хочу создавать веб-части.
По сути, это приложение, работающее в Sharepoint, использующее списки и другие функции, но все функции полезны только внутри приложения, поэтому я бы хотел избежать наводнения галереи веб-частей бесчисленными веб-частями, которые работают только в одном месте.
Так что в этом случае я бы обернул его функцией и развернул с помощью решения. Таким образом, я думаю, вы избежите возникшей проблемы. Это особенно полезно, если вы планируете использовать эту функцию и на других сайтах.
Вы также можете встраивать веб-части прямо на страницу, как и WebControl, тем самым избегая загромождения галереи.
Пока спасибо. Я успешно попробовал решение Эндрю Коннела:
http://www.andrewconnell.com/blog/articles/UsingCodeBehindFilesInSharePointSites.aspx
Оборачивание его в решение является частью этого, но основная проблема заключалась в том, как включить в него код, и он больше склоняется к варианту 2 без необходимости создавать элементы управления в коде.
Что мне не хватало:
В файле .cs необходимо вручную добавить «триггер защищенной кнопки»; прочее, потому что при использовании библиотеки классов автоматически не создается файл .designer.cs.