LINQ to SharePoint是一个自定义的LINQ提供器,能够让你使用熟悉的LINQ语法来查询SharePoint列表的数据。这样,在处理查询SharePoint数据的时候,就不会因为CAML的复杂用法而苦恼了。
它的基本特性包括:
- 把查询表达式转换为CAML(Collaborative Application Markup Language)
- 支持C# 3.0和Visual Basic 9.0
- 提供了一个实体创建工具SpMetal,可以基于SharePoint列表的定义生成用于查询的实体类
- 通过所谓的SPML(SharePoint Markup Language)来与Visual Studio集成,自动生成实体类。
- 既可以通过SharePoint对象模型,又可以通过SharePoint Web Services来访问数据。
要学习如何使用LINQ to SharePoint,最好的途径就是观看MSDN上Office开发中心的这个How to视频,以及在Channel 9上的介绍视频。
当然,目前LINQ to SharePoint还不是太完善,也不具备更新的功能。博客园的Lordan同学就在题为“LINQ to SharePoint使用感受”的博文中谈到:
最大的优点是我不用写CAML了, 非常容易实现一些简单的查询功能在开发机器上开发,然后部署到测试环境以及生产环境中, ID是不一样的; 发布的时候我都要重新修改这个值来编译, 而且最郁闷的是那个Version是经常变的。
对于Version经常变的问题,有网友给出了解决办法:
可以设置属性解决: SharePointDataContext.CheckListVersion = false
虽然这是一个不够完善的组件,但对于SharePoint的开发还是提供了一些帮助,对学习实现LINQ提供器也有一定的借鉴意义。希望大家能向这个开源项目贡献自己的力量,来不断完善它。