SharePoint – 打包和部署

SharePoint – 打包和部署


在本章中,我们将介绍 SharePoint 解决方案的打包和部署。部署 SharePoint 解决方案的第一步是创建解决方案包。

一个解决方案包是一个CAB与WSP扩展,它包含了所有实现Visual Studio项目的特点所要求的文件的文件。

实现功能所需的文件包括 –

  • 特征显现。

  • 任何元素都显现出来。

  • dll,其中包含已编译的托管代码。

  • 相关文件,如网页、用户控件和 Web 配对文件。

  • 解决方案包中包含的另一个文件是解决方案清单。解决方案清单是包中包含的文件的目录。对于 Farm 解决方案,它还包含部署说明。

  • 与功能清单一样,Visual Studio 会在您修改项目时自动创建和维护解决方案清单。您可以使用解决方案设计器查看解决方案清单。

  • 除了创建和维护解决方案清单之外,Visual Studio 还会自动为我们的项目创建解决方案包。每次部署调试工作时,它都会在幕后执行此操作。

  • 生成的解决方案包与 dll 放在同一文件夹中,因此将是 bin debug 或 bin release 文件夹。要在 Windows 资源管理器中查看此文件的内容,只需将扩展名从 WSP 更改为 CAB,然后双击该文件。

让我们看一个简单的示例,在该示例中,我们将检查与我们在上一章中创建的 SharePoint 解决方案项目相关联的解决方案包。让我们从我们之前创建的功能和元素项目开始。

特点和元素

如您所知,在项目中,我们有一个 Feature,称为 Sample。此功能引用了三个元素清单Contacts、SitePage 和 Action

您还可以看到 Action 具有 Element 清单,Contacts 具有其 Element 清单,SitePage 具有 Element 清单,以及一个网页,该网页将此网页供应到站点中。因此,我们应该期望解决方案包包含功能清单、三个元素清单、网页以及构建项目时创建的程序集。

步骤 1 – 在解决方案资源管理器中右键单击您的项目,然后选择在文件资源管理器中打开文件夹。

文件资源管理器中的文件夹

步骤 2 – 转到 bin 并打开 Debug 文件夹。您将看到解决方案包。

调试文件夹

步骤 3 – 复制它,然后将复制文件的扩展名从 wsp 更改为 cab。

wsp 到 cab

步骤 4 – 现在双击 cab 文件将其打开,您将看到这些文件。您将看到功能清单、三个元素清单、aspx 页面、dll 和一个附加文件,即解决方案清单。

驾驶室文件

步骤 5 – 在解决方案资源管理器中,您将看到一个名为 Package 的文件夹,如果展开它,您将看到一个名为Package.package的文件双击该文件,您将看到解决方案设计器。

包.package

此设计器表明,当前解决方案中只有一个功能,并且该功能引用了三个元素清单:联系人、站点页面和操作。

这个设计器就像特征设计器一样是一个 XML 文档的编辑器。

功能参考

此代理的解决方案清单很简单。它只是表明这里需要部署一个名为 FeaturesandElemenest.dll 的程序集,我们将把它部署到GlobalAssemblyCache

它还表明我们有这个功能清单的一个功能。如果我们导航回 Feature 并查看它的 Manifest,它表明存在三个 Element 清单和我们的 aspx 页面。

全局程序集缓存

农场解决方案部署

现在我们知道了解决方案包是什么以及它们包含什么,我们需要学习如何部署它们。

要部署 Farm 解决方案,请将 Visual Studio 创建的解决方案包提供给 SharePoint 管理员。他们将使用 PowerShell 或管理中心或这两种工具的组合来部署包。

让我们看看 Farm 解决方案的部署。

步骤 1 – 转到 Visual Studio 项目中的功能和元素。

农场溶液开发

这个项目有一个包含三个元素的功能。部署 Farm 解决方案时,解决方案的内容将复制到 SharePoint 系统文件夹中,如下所示 –

SharePoint 系统文件夹

第 2 步– 现在让我们转到列表设计器,然后将标题更改为 Contacts-Change 1,然后单击保存按钮。

要更改的联系人 1

步骤 3 – 现在转到项目属性,然后在左窗格中选择 SharePoint。Active Deployment Configuration选项中,从下拉列表中选择 Default 选项。

主动部署配置

步骤 4 – 在解决方案资源管理器中,右键单击项目并选择部署。部署完成后,刷新您的站点,您将看到更改。

选择部署

觉得文章有用?

点个广告表达一下你的爱意吧 !😁