开发 SharePoint 解决方案
Visual Studio 提供了若干用于创建 SharePoint 网站和网站元素的 SharePoint 项目类型模板。 有关可用项目类型的列表,请参见 SharePoint 项目和项目项模板。 以下是 SharePoint 项目的元素和属性的说明。
SharePoint 项目的元素
SharePoint 项目下的节点称作“SharePoint 项”。 SharePoint 项还可包含一个或多个子文件(称作“SharePoint 项文件”),例如 XML 配置文件、.aspx 窗体等。
可以使用**“空项目”**模板创建一个空 SharePoint 项目,然后手动添加项目项,而不是通过使用已填充项目项文件的项目模板来创建项目。 SharePoint 项目还可以包含一个或多个功能文件(用于在 SharePoint 中激活)和一个包文件(用于在其中分发项目)。
特殊节点
每个 SharePoint 项目都包含两个节点,不能在项目中对这两个节点执行重命名、删除、剪切、复制或拖动操作。 这两个节点如下所示:
功能
包
即使未对项目定义任何功能或包,这两个节点也始终会出现在所有 SharePoint 项目中。
功能节点
**“功能”**节点包含一个或多个 SharePoint 项目功能。 功能是包含 SharePoint 的扩展的容器。 在将某个功能部署到 SharePoint Server 之后,可以在网站定义中包含该功能,也可以由 SharePoint 网站上的 SharePoint 管理员单独激活该功能。 有关更多信息,请参见使用功能。
在将一个项(如内容类型或列表实例)添加到 SharePoint 项目中时,该项会添加到**“功能”**节点中的一个功能中。 该项的作用域将确定是将其添加到新功能中还是添加到现有功能中。 如果新项具有与现有功能相同的作用域,则将新项添加到该功能中。 否则,将新项添加到新功能中。
若要手动添加功能,请执行功能节点的快捷菜单上的**“添加功能”**命令。 可以使用功能设计器查看或更改功能的内容。 有关更多信息,请参见如何:自定义 SharePoint 功能。
在将某个功能添加到 SharePoint 项目中后,该功能将作为一个节点出现在**“解决方案资源管理器”**中并使用默认名称 Featurex.feature(其中的 x 是一个唯一编号)。 在将某个功能部署到 SharePoint Server 之后,SharePoint 管理员可以激活该功能,使其可供 SharePoint 网站用户使用。
包节点
**“包”节点包含一个用作 SharePoint 项目的分发机制的文件。 此文件(称作“解决方案包”)是一个基于 .CAB 的文件,其扩展名为 .WSP。 解决方案包是一个可部署的可重用文件,其中包含一组功能、网站定义和应用于 SharePoint 网站的程序集。可以单独启用或禁用此文件。 另外,“包”**节点始终包含一个名为 Package.wspdef 的文件(此文件是包的 XML 定义文件)。 在将某个包部署到 SharePoint Server 之后,SharePoint 管理员可以安装该包并激活其功能。
双击**“包”节点将在“包设计器”**中打开包。 然后可以查看或更改其内容。 有关更多信息,请参见创建 SharePoint 解决方案包。
SharePoint 项目和项目项属性
与其他 Visual Studio 项目一样,SharePoint 项目会在“属性”窗口和属性页中显示属性。 显示的属性将取决于选定的节点。
在**“解决方案资源管理器”**中选择 SharePoint 项目、项目项或项目项文件节点时,“属性”窗口或“属性页”中将显示以下属性:
项目属性
属性名 |
说明 |
---|---|
活动部署配置 |
指定部署过程中执行的一系列步骤。 有关更多信息,请参见如何:编辑 SharePoint 部署配置。 |
程序集部署目标 |
确定 SharePoint 应用程序程序集所在位置。 有效程序集位置值为 GlobalAssemblyCache(默认值)或 WebApplication。 如果 Sandboxed Solution 属性设置为 true,则此属性将被禁用。 |
调试后自动收回 |
指定在 Visual Studio 中以调试模式运行应用程序后,已部署解决方案是否自动从 SharePoint 收回。 若选择此属性,则当 IDE 在调试后返回设计视图时,解决方案将收回。 若清除此属性,则解决方案将不会收回。 有关更多信息,请参见收回解决方案。 |
编辑配置 |
指定要用于项目的部署配置。 有关更多信息,请参见如何:编辑 SharePoint 部署配置和部署 SharePoint 解决方案包。 |
启用 Silverlight 调试(而不是脚本调试) |
若选择此属性,则 Silverlight 调试器将附加到调试过程中。 若清除此属性,则脚本调试器将附加到调试过程中。 有关更多信息,请参见 Silverlight Debugging Overview(Silverlight 调试概述)。 |
在包中包含程序集 |
指定在生成时是否将项目程序集打包。 |
后期部署命令行 |
指定要在部署 SharePoint 解决方案后运行的命令。 此命令行支持任何批处理命令以及对 MSBuild 变量的解析。 有关更多信息,请参见如何:设置 SharePoint 部署命令。 |
预先部署命令行 |
指定要在部署 SharePoint 解决方案之前运行的命令。 此命令行支持任何批处理命令以及对 MSBuild 变量的解析。 有关更多信息,请参见如何:设置 SharePoint 部署命令。 |
项目文件 |
包含生成、配置和有关项目的其他信息的文件的名称。 |
项目文件夹 |
项目文件在系统中所处的位置。 (只读。) |
沙盒解决方案 |
指定是否应将项目部署为沙盒解决方案(也称作“用户创建的解决方案”)。 沙盒解决方案不一定是可信任的。 若值为 true,则表示项目将部署为沙盒解决方案;若值为 false,则表示项目将部署为场解决方案。 有关更多信息,请参见沙盒解决方案注意事项和沙盒解决方案与场解决方案之间的差异。 |
网站 URL |
指定此项目的目标网站的 URL。 |
启动项 |
指定项目中要运行的第一个项。 |
在选择 SharePoint 项文件(如工作流或功能节点中的功能)时,“属性”窗口中将显示以下属性:
项目项属性
属性名 |
说明 |
---|---|
部署冲突解决方法 |
指定在部署其属性与服务器上已存在的项的属性相同的项目项时执行的操作。 有关更多信息,请参见 SharePoint 打包和部署疑难解答。 |
功能属性 |
指定在将功能部署到 SharePoint 时功能附带的一组值(以键/值对的形式存储)。 部署功能之后,您可以在代码中访问属性值。 有关更多信息,请参见在项目项中提供打包和部署信息。 |
功能接收器 |
提供在某些事件对于项目项的包含功能发生时执行的代码。 有关更多信息,请参见在项目项中提供打包和部署信息。 |
文件夹名称 |
SharePoint 项目项文件夹的名称。 |
项目输出引用 |
指定项目项需要运行的依赖项(例如程序集)。 有关更多信息,请参见在项目项中提供打包和部署信息。 |
安全控制项 |
指定可供不受信任的用户安全编辑的控件。 有关更多信息,请参见在项目项中提供打包和部署信息。 |
项目项文件属性
属性名 |
说明 |
---|---|
生成操作 |
指定文件如何与生成过程和部署过程相关。 有关更多信息,请参见文件属性。 |
复制到输出目录 |
指定是否将源文件复制到输出目录。 可为下列值之一:
有关更多信息,请参见文件属性。 |
自定义工具 |
指定用于在设计时转换文件并将转换输出放入到另一个文件中的工具的名称(如果有)。 例如,数据集 (.XSD) 文件具有默认自定义工具。有关更多信息,请参见文件属性。 |
自定义工具命名空间 |
将自定义工具的输出复制到的命名空间。 有关更多信息,请参见文件属性。 |
部署位置 |
文件在 SharePoint 服务器上的完全限定路径。 此路径由部署根和部署路径子属性组成。 |
部署路径 |
文件在 SharePoint Server 上的相对路径,如 Workflow1\。 通过将 Deployment Path 值连接到 Deployment Root 值的末尾,可创建文件的完全限定路径。 为 Deployment Type 属性选择值 RootFile 会将 Deployment Root 属性更改为 {SharePointRoot}\,从而生成完全限定路径 {SharePointRoot}\Workflow1\。 有关更多信息,请参见打包和部署 SharePoint 解决方案。 |
部署根 |
字符串。 在 SharePoint Server 上将文件部署到的根文件夹。 例如,{SharePointRoot}\Template\Features\{FeatureName}\。 Deployment Root 属性的值由 Deployment Type 设置确定。 |
部署类型 |
文件的部署类型,可确定其 Deployment Root 值。 可为下列值之一:
枚举值 Deployment Root 值
NoDeployment<no value>
ElementManifest{SharePointRoot}\Template\Features\{FeatureName}\
ElementFile{SharePointRoot}\Template\Features\{FeatureName}\
TemplateFile{SharePointRoot}\Template\
RootFile{SharePointRoot}\
GlobalResource{SharePointRoot}\Resources\
ClassResource{ClassResourcePath}\
有关更多信息,请参见 DeploymentType。 |
文件名 |
项文件对应的文件或文件夹的名称。 |
完整路径 |
项对应的文件的位置。 (只读。) |
相关主题
标题 |
说明 |
---|---|
介绍 Visual Studio 中为您提供的 SharePoint 项目和项目项模板。 |
|
介绍如何将新项或现有项添加到 Visual Studio SharePoint 项目中。 |
|
分步指导您创建自定义字段、内容类型、列表定义和列表实例。 |
|
介绍如何为在演练:创建自定义字段、内容类型、列表定义和列表实例主题中创建的项目添加事件接收器。 |
|
介绍如何创建包含工作流关联窗体和工作流启动窗体的工作流项目。 |
|
介绍如何为 SharePoint 创建页面,如应用程序页、网站页、母版页和页面布局。 |
|
介绍如何添加控件,这些控件使用户能够使用浏览器直接修改 SharePoint 网站页的内容、外观和行为。 |
|
介绍如何创建可由在 SharePoint 中运行的应用程序页和 Web 部件使用的用户控件。 |
|
介绍如何将数据从 Web 服务和后端服务器应用程序集成到 SharePoint 应用程序中。 |
|
介绍如何创建网站定义(即,用于创建 SharePoint 网站的模板)。 |
|
介绍如何将项(如内容类型和模块)从现有 SharePoint 网站导入 Visual Studio SharePoint 项目中。 |
|
介绍如何使用模块将文件从 Visual Studio 项目部署到 SharePoint 网站。 |
|
介绍如何使用服务器资源管理器浏览本地 SharePoint 网站。 |
|
介绍如何使用项目项属性来提供项目的打包和部署信息,如安全控件项、项目输出引用和功能属性。 |
|
介绍如何将映射文件夹添加到项目中,以便更轻松地访问 SharePoint 资源。 |
|
介绍与沙盒解决方案相关的问题。 |
|
介绍在 Visual Studio 中开发 SharePoint 解决方案的安全注意事项。 |
|
介绍可用于添加对项目中或本地 SharePoint 服务器上的资源的路径引用的对话框。 |