要开发SharePoint 2010应用程序,开发人员必须构建一个SharePoint2010开发环境。开发SharePoint 2010应用程序有一个基本的需求,就是所有的开发工作几乎都需要依赖于SharePoint2010系统,换句话说,开发环境中除了Visual Studio 2010之外,还必须直接安装有SharePoint2010。在本地安装一个Visual Studio 2010,然后使用远程服务器上的一个SharePoint2010系统,这种方式是不受支持的。
另外需要注意的是,只有Visual Studio 2010专业版以上的版本,才内置了SharePoint2010开发人员工具,并且SharePoint 2010项目模板只有C#和Visual Basic.Net这两个语言版本。
2.1.1 建立开发环境的可选方案
SharePoint 2010必须使用x64架构,在很多时候,这会给创建SharePoint2010开发环境带来一些麻烦。但是相比之前的版本,SharePoint 2010除了能被安装到Windows Server 2008x64和Windows Server 2008 R2 x64这两个服务器操作系统之外,它还能被安装到Windows Vista x64SP1和Windows 7 x64客户端操作系统之上。所以开发人员可以有多种选择,来建立自己的SharePoint2010开发环境。表格 2-1列出了开发人员可选的几个主要方法。
方法 | 说明 | 优点 | 缺点 |
运行在开发人员本地机器上的虚拟机 | 在开发人员的本地机器上使用虚拟机技术,在虚拟机中安装WindowsServer 2008/2008 R2 x64、SharePoint 2010、Visual Studio2010,构建出一个完整的开发环境。所有的开发工作都在这个虚拟机中进行。 如果开发人员本地机器的操作系统是Windows Server2008/2008 R2 x64,那么可以选择使用操作系统内置的Hyper-V功能,来创建和使用虚拟机。 如果开发人员本地机器的操作系统是Vista SP1x64或Windows 7 x64,那么可以选择使用其他第三方的虚拟机软件,例如VMware Workstation或VirtualBox。 | ||
直接在本地机器上安装SharePoint2010 | 开发人员可以在自己的本地开发机器上直接安装SharePoint2010和Visual Studio 2010,然后把开发机器直接作为开发环境使用。 如果开发人员本地机器的操作系统是Windows Server2008/2008 R2 x64,那么直接安装SharePoint 2010会比较简单,基本上和部署一个单服务器的SharePoint2010没有什么区别。 如果开发人员本地机器的操作系统是Vista SP1x64或Windows 7 x64,那么直接安装SharePoint 2010需要特别的操作,和常规的SharePoint2010部署并不相同。 如果开发人员希望将开发环境和工作环境(用来收发邮件、存储和听MP3等等)分开,可以考虑使用多系统启动,将开发环境安装在一个独立的系统中。在多系统启动时,甚至可以考虑采用VHDBoot系数。 | ||
使用专用的开发服务器 | 开发团队在专用的服务器上,使用虚拟机技术为每个开发人员创建独立SharePoint2010开发环境。开发人员可以通过远程桌面的方式连接并使用开发环境。 |
表格 2-1:创建SharePoint2010开发环境的可选方法列表
提示有关VHDBoot的详细信息,请参考http://edge.technet.com/Media/Windows-7-Boot-from-VHD/。
选择何种方式来建立开发环境,基本上取决于开发团队所拥有的资源。如果拥有比较好的硬件资源(比如开发机器拥有8GB的内存),那么推荐使用Hyper-V或其他第三方的虚拟机技术,在虚拟机中构建一个SharePoint2010开发环境。虚拟机的好处是可以为开发团队创建一个标准、一致的开发环境,并且开发环境不会受到其他杂七杂八软件的干扰。如果开发人员的本地机器并没有那么"强劲",并且习惯使用WindowsVista x64 SP1或Windows 7 x64作为自己的主操作系统,那么可以选择直接将SharePoint2010安装到本地机器的操作系统中。
提示无论开发团队最终选择何种方式来为开发人员建立开发环境,但基本原则是每个开发人员都应该有独立的开发环境,而不能多个开发人员(甚至整个开发团队)共享一个开发环境。共享的开发环境通常会导致较低的开发效率。
2.1.2 在Windows 7x64操作系统中安装SharePoint 2010
使用虚拟机技术,或是直接将SharePoint 2010安装到Windows Server 2008/2008 R2x64操作系统上,和部署一个单服务器SharePoint2010系统区别不大,所以在本书中不再单独讲述。但由于直接将SharePoint 2010安装到Windows 7x64操作系统中是SharePoint2010的新特性,而且很多开发人员的本地机器上也是使用的此操作系统,所以我们将在本节介绍如何在Windows 7x64操作系统中安装SharePoint2010,以构建一个开发环境。我们相信对于很对开发人员而言,这算得上是一种经济且实用的方案。
对准备在Windows 7操作系统上安装SharePoint2010的开发人员而言,一个好消息是,开发环境不一定需要加入到域中。无论你的开发机器是否已经加入了域,都没有关系。
在安装之前,建议将Windows 7内置的用户帐户控制(UAC)关闭。通过"控制面板 - 系统和安全 –更改用户帐户控制设置",打开如图 2- 1所示的界面,然后将滑条滑动到最下面的一个选项。
提示虽然SharePoint2010也可以被安装到Vista SP1 x64操作系统中,但篇幅所限,所以本书仅介绍如何使用Windows 7 x64建立开发环境。如果你使用的是Vista SP1 x64,请参考SharePoint SDK中的相关章节:http://msdn.microsoft.com/en-us/library/ee554869.aspx。
我们将要安装的SharePoint 2010开发环境具有如下特点:
2.1.2.1 安装所需补丁与组件
首先,我们需要在Windows 7操作系统上安装SharePoint2010所需要的各种补丁与组件。下面是所有必需补丁与组件的列表以及它们的下载地址,如果在下载页面上显示有多个平台版本(x86、x64、IA64),请确保下载并安装x64版本:
在打开的命令提示符窗口中,输入如下指令,回车并运行。注意,下面的指令文本是一整行,而并非多条指令,在输入指令时,请确保指令文本中间没有换行符。建议先打开记事本,然后将指令先在记事本中输入完整,然后粘贴到命令提示符中后回车运行。
start /w pkgmgr/iu:IIS-WebServerRole;IIS-WebServer;IIS-CommonHttpFeatures;IIS-StaticContent;IIS-DefaultDocument;IIS-DirectoryBrowsing;IIS-HttpErrors;IIS-ApplicationDevelopment;IIS-ASPNET;IIS-NetFxExtensibility;IIS-ISAPIExtensions;IIS-ISAPIFilter;IIS-HealthAndDiagnostics;IIS-HttpLogging;IIS-LoggingLibraries;IIS-RequestMonitor;IIS-HttpTracing;IIS-CustomLogging;IIS-ManagementScriptingTools;IIS-Security;IIS-BasicAuthentication;IIS-WindowsAuthentication;IIS-DigestAuthentication;IIS-RequestFiltering;IIS-Performance;IIS-HttpCompressionStatic;IIS-HttpCompressionDynamic;IIS-WebServerManagementTools;IIS-ManagementConsole;IIS-IIS6ManagementCompatibility;IIS-Metabase;IIS-WMICompatibility;WAS-WindowsActivationService;WAS-ProcessModel;WAS-NetFxEnvironment;WAS-ConfigurationAPI;WCF-HTTP-Activation;WCF-NonHTTP-Activation
等待一会儿,在上面这行指令运行完成后。打开"控制面板 – 程序 –打开或关闭Windows功能",在打开的窗口中,确认Windows功能,都已经启用了。如果有缺失的功能,可以在这个窗口手工启用它们。
2.1.2.2 安装SQL Server 2008 R2接下来,在Windows 7操作系统中安装SQL Server 2008 R2。在Windows 7中安装SQL Server2008 R2并没有什么特别的,基本上和在Windows Server 2008/2008 R2操作系统中一样。图 2- 5到图 2-9展示了笔者在自己的开发环境中安装SQL Server 2008R2的设置,图片中的"kaneboy-pckaneboy"是笔者环境中开发机器的管理员帐户,其中"kaneboy-pc"是机器名。
安装完成后,如果一切顺利,在Windows 7的任务管理器中,应该可以看到SQLServer相关服务的进程,
提示如果你选择安装SQL Server2008,而不是SQL Server 2008 R2,那么在安装完成SQL Server 2008之后,需要继续分别安装下面这两个SQL Server 2008的更新包:
2.1.2.3 安装SharePoint 2010为了将SharePoint 2010安装到系统中,建议将SharePoint 2010的安装文件先复制到Windows7磁盘文件系统中。如果你手里的SharePoint2010安装介质是光盘或ISO文件,只需直接将光盘或ISO中包含的文件直接复制到Windows7中即可。如果安装介质是一个.exe可执行文件,那么可以通过在命令提示符中,在安装程序的后面加上"/extract"参数(例如:"SharePointServer2010.exe/extract")运行安装程序,就能将安装程序解压到指定的磁盘文件夹中。
打开"PrerequisiteInstallerFilesFilterPack"文件夹,双击并运行"FilterPack.msi"。这是唯一一个内置在SharePoint2010安装文件中的额外必需组件,它包含了SharePoint 2010搜索引擎将用到的各种iFilter。
打开"FilesSetupFarm"文件夹中的"config.xml"文件,在"<Configuration>"节点中增加一个新的XML节点:
<SettingId="AllowWindowsClientInstall"Value="True"/>
以管理员身份打开命令提示符(如图 2- 2所示),将当前文件夹设置为放置SharePoint2010安装文件的目录,然后执行"setup.exe /configFilesSetupFarmconfig.xml"指令,启动SharePoint 2010安装程序,如图 2- 13所示。
在如图 2- 14所示的安装类型选择界面中,选择"服务器场"类型。在如图 2-15所示的服务器类型选择界面中,选择"完整"类型。
耐心等待SharePoint2010安装完成,当出现如所示的提示界面时,不要选择"立即运行SharePoint产品配置向导"复选框,直接点击"关闭"按钮即可
以管理员身份打开命令提示符窗口,将当前目录设置为"Program FilesCommon FilesMicrosoftSharedWeb Server Extensions14BIN"目录,然后在命令提示符窗口中输入"psconfig.exe–cmd configdb –create –server <开发机器的机器名>-database SharePoint_Config –user<开发机器管理员帐户>-password <开发机器管理员帐户的密码>-admincontentdatabase SharePoint_Admin_Content -passphrase<指定一个用来加密SharePoint服务器场通讯的密码>"指令并运行,这将为SharePoint2010系统创建配置数据库。图 2-17是运行此指令后的输出结果。虽然在执行过程中,会输出"本地帐户应只能在独立模式中使用"之类的信息,但这并不会阻止成功创建配置数据库。
然后,直接从开始菜单中打开SharePoint 2010产品配置向导,配置向导会发现我们之前通过命令行所创建的配置数据库,在图2- 18所示的界面上,选择"不断开与此服务器场的连接",点击"下一步"。
为SharePoint管理中心手工指定一个端口号或是使用默认的随机端口号,然后连续点击"下一步",完成SharePoint2010产品配置向导的运行。如果一切顺利,你将看到如图 2-20所示的界面。
SharePoint 2010产品配置向导运行成功完成之后,会自动打开SharePoint2010管理中心。第一次打开管理中心网站时,会提示管理员运行服务器场配置向导。建议管理员使用这个配置向导,对服务器场进行初始设置、安装必要的服务并创建第一个网站集。如何对SharePoint2010服务器场进行配置管理已经超出了本书的范围,读者可以参考一书。
提示在Windows7操作系统上运行完成配置向导,第一次打开SharePoint 2010管理中心网站时,有可能无法正常打开。如果遇到这样的情况,建议将当前浏览器关闭,然后使用"IISReset"指令重新启动IIS,然后再尝试通过开始菜单打开SharePoint2010管理中心。
提示在Windows7操作系统上,无法安装Office Web Applications组件。
2.1.2.4 安装其他软件在成功安装SharePoint 2010之后,开发人员可以继续在开发环境中安装如下软件: