2008-11-27 54 views
5

我的公司正在研究编写一个自定义应用程序,该应用程序需要跨多个网站集执行许多列表项查询。它需要运行WSS 3.0,如果它在WSS 2.0上运行,它'会很好'。它不会被设计用于MOSS/SPS,但如果它在这些平台上运行,它将“再好不过了”。对于该解决方案应该使用哪个.NET版本没有限制。查询列表项并使用SharePoint Web服务与对象模型

对于这种类型的应用程序,什么会更好:对象模型/ API或SharePoint Web服务?我正在考虑的主要因素是性能,其次是特性和功能。谢谢!

回答

5

对象模型更好,因为您可以访问其他功能以及列表项的完整详细信息,例如版本历史记录。

对象模型对性能也更好(只要你正确地处理()你的spsite和spweb对象)。

Sharepoint对象模型在2和3之间有一些差异,但是如果您查看v2的参考,那么它也将与v3一起使用。

网络服务在v2和v3之间根本没有变化,这就解释了为什么他们没有v3的任何新功能。

对象模型赢得性能的原因是您不会将数据序列化为Xml,然后传输大量的Xml,然后对Xml进行反序列化。该对象模型可以节省您的内存和带宽。

+0

Web服务和OM都(大部分)向后兼容,但某些Web服务具有获取新功能的新方法(例如.GetWebPart2我认为) – Ryan 2008-11-27 20:56:31

5

首先要考虑的是“我的代码是在SharePoint服务器上运行还是远程运行?”

  • 如果它的运行远程,你不 有任何选择,使用Web服务

  • 如果它在的SharePoint 服务器运行,我会建议使用对象 模型,因为性能将会更好,您将可以访问更多 API并且身份验证将为 更容易(=自动)。

0

能否OM将InfoPath表单中使用?目前,我正在使用Web服务来提取我想要的列表数据,但我宁愿使用OM。

+0

这对了解更多信息会很有趣。你介意为此创建一个新问题吗? – 2009-01-23 11:53:15

相关问题