CAML из Sharepoint в HTML - PullRequest
       15

CAML из Sharepoint в HTML

2 голосов
/ 30 октября 2008

Я вызываю один из API-интерфейсов веб-служб SharePoint , который возвращает фрагмент CAML. Я искал широкую и широкую сеть, но мне не удалось понять, как заставить этот фрагмент CAML отображать как «нормальный» HTML, который я могу отображать в более разумной среде, такой как Plumtree, WLP, Liferay или любой другой портал кроме SharePoint.

Не имея возможности сделать это, мне интересно, почему Microsoft написала вызовы веб-службы SharePoint, которые в первую очередь возвращают CAML. Веб-сервисы предназначены для взаимодействия, и кажется, что CAML действителен только в веб-части, работающей в SharePoint. [Примечание для Билла и Стива: это не совместимость.]

Если я не могу ничего сделать с возвращаемым CAML, я просто вызову другой веб-сервис, который возвращает только данные, а затем напишу свой собственный пользовательский интерфейс. Я надеялся на более легкий путь. Любые предложения будут с благодарностью.

Ответы [ 2 ]

5 голосов
/ 30 октября 2008

CAML по-прежнему является XML, и, как уже упоминалось, XSLT сможет отображать его как HTML. Фактическая вложенная структура OR / AND в CAML - это совершенно другая проблема.

Для этого потребуется развернуть структуру CAML и отобразить ее так, чтобы ее понимали обычные люди.

К сожалению, язык XSLT не подходит для развертывания подобных вложенных структур (у него нет стека). Это возможно, но после этого я настоятельно рекомендую использовать другой язык для анализа и развертывания CAML.

Мне еще предстоит увидеть код преобразования CAML в SQL. Звучит как отличный проект Codeplex.

Итак, в заключение ... вы немного напичканы CAML. Хотя это XML, его структура не подходит для использования на любом другом языке запросов.

4 голосов
/ 30 октября 2008

Вы можете отправить CAML через таблицу стилей XSLT для генерации HTML или XHTML.

Edit:

Учитывая ваш первый вопрос (почему SharePoint возвращает CAML от некоторых своих веб-служб) ... кто знает? Он может быть там для поддержки таких инструментов разработки, как конструктор SharePoint. Но из-за недостатка документации и инструментов становится ясно, что CAML - это более или менее внутренняя вещь SharePoint. В настоящее время выполнение преобразования CAML в HTML потребует либо какого-либо доступа к механизму рендеринга CAML в SharePoint, либо его повторной реализации. Ни один из вариантов не является привлекательным.

Я думаю, что ваш вывод (вызов веб-служб с возвратом данных и отображение HTML самостоятельно), вероятно, является лучшим выбором.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...