指间(蒋建华)--天行健,君子当自强不息

        专注于微软产品及.Net技术的blog
  博客园  :: 首页  :: 联系 :: 订阅 订阅  :: 管理

SharePoint2010新起点之开发人员新功能

Posted on 2010-07-02 00:05  蒋建华  阅读(668)  评论(0编辑  收藏  举报

SharePoint 2010 产品分成了两个版本SharePoint Foundation 2010SharePoint Server 2010,其中SharePoint Foundation 2010WSS 3.0的升级,而SharePoint Server 2010 则是MOSS2007的升级,由此我们可以看到SharePoint Foundation 2010 SharePoint Server 2010之间的关系,SharePoint Foundation 2010SharePoint2010的基础,但后者包含了前者全部功能,本文中的SharePoint 2010 是这二者的统称。

一个新的产品,对于开发者来说,更加关注的是其新增功能。SharePoint 2010的新增功能主要集中在3个方面:开发人员工作效率、丰富的平台服务、灵活的部署,具体来说其新增功能如表1所示:

功能

功能描述

开发人员工作效率

VS 2010 SharePoint 项目类型和项

VS 2010 SharePoint 工具扩展性

VS Extensions For SharePoint

升级 Windows 7 Windows Vista 操作系统支持

SharePoint Designer 2010

开发人员仪表板

Team Foundation Server 2010 集成

丰富的平台服务

SharePoint 功能区

SharePoint 对话框

Silverlight Web 部件

列表查找和关系

Business Connectivity Services

LINQ to SharePoint

性能增强

解决方案限制

事件增强

工作流增强

客户端对象模型

REST API

灵活的部署

沙盒解决方案

SharePoint Online

升级解决方案

1 SharePoint 2010 新增功能

有了这么多的新增功能,SharePoint 2010 的功能和MOSS2007相比又有什么样重大改变呢?SharePoint 2010 的功能如图1所示:

1 SharePoint 2010功能模块

我们可以看到SharePoint 2010 有六大功能模块,网站、社区、内容、搜索、见解和整合应用,相比较MOSS 2007来讲,社区、见解和整合应用是其新增功能。不同于普通用户,对开发人员来说,对一个产品功能的了解更倾向于从自带功能和可扩展功能两方面去了解。SharePoint 2010 中六大功能模块的自带功能和扩展功能列表如表2所示:

功能

自带功能

可扩展功能

网站

通过连接到 Microsoft Office 客户端应用程序,轻松而灵活地存储和检索列表及文档库内容;

使用模板创建网站、网站集合;

信息展示;

Ribbon 用户界面;

工作区;

移动站点;

Web 部件、母版页、网页、 委托控件;

利用Word 文件转换服务的解决方案;

InfoPath Service

Visio Service

用于将Access 解决方案部署到 SharePoint Access Services

社区

通过专业技术、关系、标记和内容分级查找人员并与之交互的功能;

BLOGWiki

我的站点

组织机构浏览

预定义搜索、搜索 Web 件;

标记界面;

分级界面;

自定义用户界面;

内容

内容发布与管理

内容类型

元数据管理

远程BLOB存储

多媒体内容类型

自定义网页类型、字段控件、内容类型、文档集;

工作流和 Word Services

记录管理扩展性和公共网站扩展性;

搜索

企业级搜索;

网站、列表级搜索;

图片搜索;

快速部署;

预定义的搜索结果转换;

利用搜索来导航和查找内容的Web 部件以及与后端系统的连接;

IFilter和协议处理程序;

见解

性能服务;

Excel 服务;

Visio 服务;

图表组件;

Web分析;

集成SQL PowerPivot

Excel Services

Excel 用户定义的函数;

关键绩效指标 和仪表板;

整合应用

BCS

InfoPath表单服务;

工作流;

VS开发;

扩展列表;

新的Web 部件,如Silverlight Web部件;

工作流;

InfoPath Forms Services

2 SharePoint 2010 功能列表

对于有一定SharePoint 产品基础的开发人员来说,相信看到了上面的功能以后,对SharePoint 2010的产品开发已经有了一个大概认识。在本文中,我们不打算对其所有功能都来做详细而又深入描述和讲解,只是结合Visual Studio 2010 SharePoint API的对象模型来介绍SharePoint 2010 给开发人员带来的好处。

 

VS 2010SharePoint 2010

在介绍使用VS 2010SharePoint 2010开发之前,我们应对SharePoint 2010丰富的平台服务有所了解。Microsoft .NET Framework 提供了开发人员可通过代码导入和使用的基础服务。SharePoint 2010 平台通过可直接从开发人员代码调用的其他库和功能扩展了这些服务。SharePoint 还提供了一组最终用户和业务分析师工具,它们紧密集成到了可供开发人员使用的功能和 API 中。SharePoint 2010 丰富的平台服务如图2所示:

2 SharePoint 2010 平台服务

了解了SharePoint 2010提供的丰富的平台服务后,结合VS 2010,我们来了解一下Visual Studio在开发SharePoint应用上有什么新功能。

打开VS 2010,顺序选择文件|新建|项目|Visual C#|SharePoint|2010,打开的界面如图3所示:

3 VS 2010 创建SharePoint 2010项目

由图3我们可以看到,在VS 2010里可以创建的SharePoint 2010项目类型有:

空的SharePoint 项目

Web部件

时序工作流

状态机工作流

业务数据连接模型

事件接收项目

列表定义

内容类型

站点定义

导入工作流

导入SharePoint解决方案

在没有安装SharePoint开发扩展包(VseWss)的情况下,使用VS 2010能够支持的MOSS类型的项目如图4所示:

4 VS 2010支持MOSS项目

在没有安装Visual Studio开发扩展包的情况下,只支持工作流的开发,如果在VS 2008中安装了开发扩展包的情况下,可以创建的项目类型如图5所示:

5 VS 2008支持MOSS2007项目类型

由以上的对比我们可以清楚的看到,使用VS 2010可以开发出很多的应用程序,在开发的应用程序中,Web 部件被认为是 SharePoint 最常用的可扩展点,几乎每个项目都至少包括一个 Web 部件。用于创建 Web 部件的开发工具已扩展到可视化 Web 部件,可管理连接到 Web 部件类的 ASP.NET 用户控件 (ASCX)。此方法允许开发人员利用 Visual Studio 2010 中的可视化设计器来编辑 Web 部件。与以前的服务器控件类型的非可视化方法相比,此方法可显著提高开发人员的工作效率。

SharePoint 现在包括对Silverlight 文件的内在支持。只需开发 Silverlight 应用程序 (.XAP) 并将它部署到服务器即可。然后可以通过添加 Silverlight Web 部件并提供 .XAP 文件的位 置,将 Silverlight 应用程序添加到网页。Silverlight 应用程序显示为页面的一部分,如图 6所示:

6 使用VS 2010开发Silverlight 部件

除了对Web部件的开发支持,我们需要关注的另一个重点是Business Connectivity Services

Business Connectivity Services(以前称为业务数据目录)提供了对源自业务线系统、 Web 服务或 SharePoint 2010 Office 2010 应用程序内的其他外部数据提供程序的外部数据的访问。SharePoint 2010 Office 2010 应用程序都具有可直接使用外部数据的产品功能,并且 SharePoint Designer 2010 Visual Studio 2010 中也提供了用于处理外部数据的工具。Business Connectivity Services 是基于 Office SharePoint Server 2007 中包 含的业务数据目录构建的,添加了来自 Office 客户端 2010 应用程序的编写功能、新工具和脱机缓存等。

7显示了新增的 BCS 会如何创造机会,以便将 SharePoint 功能和 API 用于通过直接 访问数据库或通过 Web 服务获得的现有业务线数据。

7 BCS 体系结构

SharePoint 2010 应用程序接口

SharePoint 2010 通过集成对非 SharePoint 托管数据的访问,并通过提供一组更加丰富的用于创建 SharePoint 解决方案的工具,使 SharePoint API 可用于包括Web服务器和客户 端在内的各个平台。该平台可以支持更广泛的应用程序类型,并且可以延伸到受支持方案的更深处。

SharePoint 2010中,开发人员可以使用多种对象模型来访问服务器。客户端对象模型 (客户端 OM)是与服务器对象模型(服务器 OM)使用相同或类似编程概念的统一模型。 客户端 OM 可通过Web服务、客户端 (JavaScript) API REST进行访问。这样一来,可以显著简化从客户端计算机及基础结构内的其他计算机访问SharePoint 数据的过程,从而为更丰富的应用程序铺路搭桥。图8显示了SharePoint对象模型选项。

8 SharePoint 2010 对象模型

 

总结

SharePoint 2010的新增功能主要集中在3个方面:开发人员工作效率、丰富的平台服务、灵活的部署。在SharePoint 2010平台上结合使用VS 2010 SharePoint API能够开发出更多更丰富的应用程序出来,如Silverlight Web部件、工作流、BCSTFS 2010结合进行团队开发、调试、部署等等。诚然,SharePoint 2010带给开发者惊喜不止于此,更多的好处希望广大读者去发现。