我正在调用返回CAML片段的one of SharePoint's web service APIs。我已经在广泛的互联网上进行了搜索,但是我一直无法弄清楚如何使这个CAML片段呈现为“正常” HTML,我可以在更加理智的环境(例如Plumtree,WLP,Liferay或任何其他门户网站)中呈现除了SharePoint。
没有办法做到这一点,我想知道为什么Microsoft编写了首先返回CAML的SharePoint Web服务调用。 Web服务是为了实现互操作性,似乎CAML仅在SharePoint中运行的WebPart中有效。 [Bill和Steve注意:这不是互操作性。]
如果返回的CAML不能做任何事情,我将调用另一个仅返回数据的Web服务,然后编写自己的UI。我希望有一条更简单的道路。任何建议将不胜感激。
最佳答案
CAML仍然是XML,并且如上所述,XSLT将能够将其呈现为HTML。实际的CAML嵌套嵌套的OR / AND结构是一个完整的问题。
这将需要展开CAML结构并以普通人理解的方式显示它。
不幸的是,XSLT语言不适合展开这样的嵌套结构(它没有堆栈)。有可能,但是这样做后,我强烈建议您使用其他语言来解析和展开CAML。
我还没有看到CAML到SQL的转换代码。听起来像一个很棒的Codeplex项目。
因此,总而言之,您对CAML有点不了解。虽然是XML,但其结构不适合在任何其他查询语言中使用。
关于web-services - 从Sharepoint到HTML的CAML,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/251577/