Как можно сцепить функцию SharePoint 2007 в Application_Start сайта?

Вы можете объединить строку в js с помощью оператора «+», а в php вы должны использовать «.»

Так что вы можете попробовать это:

5
задан ScottCher 30 October 2008 в 15:21
поделиться

2 ответа

Это на самом деле возможно, но это не связано с файлом Global.asax.

Многие примеры Microsoft демонстрируют подключение кода через Global.asax, но это не лучший вариант. -практический подход, когда дело доходит до SharePoint. В идеале ваш код должен быть упакован как Feature и развернут через WSP (как вы уже знаете).

Ключ заключается в реализации рассматриваемого кода как HttpModule (т. Е. Типа, который реализует интерфейс IHttpModule) и его подключении в конвейер ASP.NET, обслуживающий ваше приложение SharePoint. Грубо говоря, это шаги:

  1. Создайте класс, реализующий интерфейс IHttpModule.
  2. Реализуйте метод Init в вашем HttpModule; это вызывается при настройке HttpApplication (в данном случае SPHttpApplication) и дает вам возможность выполнять обработку, делегаты событий подключения для других событий конвейера и т. д.
  3. Создайте SPFeatureReceiver, который будет добавлять и удалять ваш HttpModule из целевых файлов web.config при активации и деактивации соответственно. Это выполняется с использованием типа SPWebConfigModification для обновления узла в целевых файлах web.config.
  4. Упакуйте все как компонент и разверните через WSP.

Для получения дополнительной информации о разработке HttpModule см. http : //msdn.microsoft.com/en-us/library/ms227673.aspx . Дополнительные сведения о типе SPWebConfigModification см. В http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.administration.spwebconfigmodification.aspx .

Результат: класс, который может обрабатывать запуск приложения и развертывается через Feature. Не требуется ручного взлома файлов.

I '

13
ответ дан 18 December 2019 в 10:50
поделиться

Мое инстинктивное чувство на этом состоит в том, что это не будет возможно. Application_Start называет время выполнения, поскольку механизм asp.net запускает, таким образом, скорее всего, не может быть никакого способа сцепить обработчик за пределами изменения Global.asax - например, рычаг должен быть декларативным и персистентным, поскольку это должно пережить остановку/разгрузку приложения. Так, если необходимо записать в global.asax, я предполагаю, что Вы могли бы записать Функции EventReceiver для выполнения модификации.

То, что в стороне, можно предоставить больше подробную информацию на почему? Возможно, существуют другие углы атаки. Идея изменить global.asax на лету заставляет меня чувствовать себя больным. Это не может быть хорошо.

Oisin

3
ответ дан 18 December 2019 в 10:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: