Я хочу использовать некоторые возможности ASP.NET 3.5 в SharePoint 2007. В частности, я хочу сделать следующее:
- Предоставьте REST и, возможно, JSON через HTTP, чтобы другой продукт мог использовать контент SharePoint.
- Предоставление веб-частей AJAX в SharePoint. У них, вероятно, будет мало или совсем нет элементов управления на стороне сервера. Большая часть контента будет загружаться с использованием Javascript и попадания во внешнюю систему (в первую очередь, не в SharePoint) через HTTP, который предоставляет REST или JSON.
- Предоставьте эту возможность как продукт. Это не разовое решение для одной реализации.
Моей главной заботой является откат ИТ-групп, которые не хотят менять свою среду SharePoint, чтобы позволить продукту работать. Поэтому я предпочел бы сказать, что то, что я делаю, «поддерживается Microsoft», но я не уверен, что так оно и будет.
Я понимаю, что мог бы создать отдельный (не SharePoint) веб-сайт на серверах SharePoint для конечных точек WCF, которые предоставляют данные SharePoint для внешнего приложения. Я бы предпочел не делать этого, потому что это не поможет моим веб-частям (если им нужна помощь), и это усложнит развертывание. При правильном развертывании SharePoint автоматически обновляются все необходимые файлы SharePoint (например, web.config) в любом новом веб-интерфейсе, добавляемом в ферму, и это не будет соответствовать этому шаблону. Кроме того, я бы потерял возможность использовать SPContext.Current.
Я прочитал большую часть книги Дэниела Ларсона о Разработка сервис-ориентированных приложений AJAX на платформе Microsoft (хорошо читается, BTW), особенно Глава 11 о расширении SharePoint. Он описывает параметры WCF, ASMX и HTTP-обработчика и по большей части рекомендует вариант HTTP-обработчика. Похоже, что опция HTTP Handler имеет минимальные изменения в web.config.
Я также видел блоги на SharePoint в качестве хоста WCF , SharePoint 2007 и модель разработки Thin .NET 3.5 , Как: начать работу с .NET 3.5 в вашей среде SharePoint и Включение .NET 3.5 на сайтах SharePoint 2007 - «Ленивый путь» . А также «функция настройки Silverlight (.NET 3.5)» (и, возможно, даже «функция Ajax.Config») в компонентах SharePoint 2007 Project CodePlex . Похоже, что все эти опции вносят довольно радикальные изменения в файл web.config и могут быть неприемлемы для потенциальных клиентов.
Какие мнения по этому поводу? А что если я захочу использовать AJAX Control Toolkit (я использовал это раньше в SharePoint, но это было давно)?
Обратите внимание, что, возможно, нам может потребоваться SharePoint SP2, если это поможет, но я не думаю, что это так.
Также обратите внимание, что Silverlight не является обязательным требованием для веб-частей SharePoint, но его использование может быть полезным.