升级示例:升级三种常见自定义项

SharePoint 2007

更新: 2009-03-05

本文内容:

如果您已对 Microsoft Office SharePoint Portal Server 2003 网站进行了大量的自定义(通过使用 Microsoft Office FrontPage 2003),则需要确定在升级时如何处理这些自定义网站。处理方法将因自定义的范围、网站的复杂程度以及升级目标而异。

Important重要说明:

本文假定您执行的是逐步升级,这样您可以在环境中使用 SharePoint Portal Server 2003 和 Office SharePoint Server 2007。利用逐步升级,您可以升级自定义网站、查看更改并在完成升级过程之前决定如何处理每类自定义。有关逐步升级和其他升级方法的详细信息,请参阅确定升级方法 (Office SharePoint Server)

本文中的示例提供了以下用于处理自定义项的方法的说明:

  • 保留自定义项

    • 保留自定义项并忽略新的功能。

    • 保留自定义项并使用新的功能。

  • 删除自定义项

    • 删除自定义项或使用新功能恢复自定义项。

有关用于处理自定义项的不同方法的详细信息,请参阅确定如何处理自定义项 (Office SharePoint Server)

示例:升级自定义 Web 部件

可以将为 SharePoint Portal Server 2003 创建的自定义 Web 部件升级到 Office SharePoint Server 2007,并继续在新环境中使用这些部件。

Important重要说明:

有关在升级 Web 部件时执行的检查的详细信息,请参阅在浏览器和 Microsoft Office SharePoint Designer 2007 中重新应用自定义项

通过使用以下各节中介绍的任一选项,可以将自定义 Web 部件从 SharePoint Portal Server 2003 升级到 Office SharePoint Server 2007。

保留自定义项并忽略新的功能

若要保留自定义项并忽略新的功能,请安装新的版本,但不要升级自定义的网站集。可以并行运行这两个版本,以便继续在 SharePoint Portal Server 2003 上运行网站。由于网站是在 SharePoint Portal Server 2003 上运行的,因此自定义项会自动保留。此时可以使用该环境来部署其他的 Office SharePoint Server 2007 网站。

保留自定义项并使用新的功能

若要保留自定义项并利用 Office SharePoint Server 2007 中的新功能,请使用任意升级方法来升级网站。服务器和网站将升级到 Office SharePoint Server 2007。紧接着,升级 SharePoint Portal Server 2003 中设置的自定义项。

升级自定义 Web 部件

需要在 ASP.NET 2.0 中测试 Web 部件以验证它们在新的环境中是否能正常工作。特别是在以下情况下,必须重新生成或重新部署自定义 Web 部件:

  • 已使用 ASP.NET 1.1 模糊处理工具。使用 ASP.NET 2.0 重新生成 Web 部件。

  • 使用用于升级的数据库迁移路径移动到新的服务器场中。如果选择此升级路径,请将 Web 部件重新部署到新的服务器场。

  • 已将自定义 Web 部件存储在 \BIN 文件夹中,并且未执行就地升级。由于升级不会将项目升级到新的 \BIN 文件夹,因此要重新部署 Web 部件。

如果不按上一列表中所述重新生成或重新部署自定义 Web 部件,则使用 ASP.NET 1.1 在 SharePoint Portal Server 2003 中创建的自定义 Web 部件在 Office SharePoint Server 2007 中运行时将导致出现以下错误:

Web Part Error: A Web Part or Web Form Control on this page cannot be displayed or imported. The type could not be found or it is not registered as safe.

按照以下过程将 ASP.NET 1.1 中开发的所有自定义 Web 部件编译到 ASP.NET 2.0 中,然后将这些 Web 部件添加到全局程序集缓存中。执行下列步骤需要使用 Microsoft Visual Studio 2005 开发系统,但您也可以使用 Visual Studio 2008 来升级自定义 Web 部件。

升级自定义 Web 部件

  1. 打开要在 Visual Studio 2005 中升级的 Web 部件的解决方案文件。如果该解决方案是在 Visual Studio 2003 中生成的,则应用程序会提示您升级代码。

  2. 打开“项目属性”,然后在“签名”部分中为密钥文件指定一个强名称。

  3. 生成项目。

  4. 单击“开始”,然后单击“运行”。

  5. 键入 Assembly,然后按 Enter。

    • 将编译好的程序集拖放到全局程序集缓存中。

  6. 打开 .dll 文件的属性以检索公钥标记。

  7. 若要在 Web.config 文件中添加自定义组件,请打开要向其中添加 Web 部件的 SharePoint 网站的 Web.config 文件。

    Note注意:

    若要查找正确的 Web.config 文件,请在 Internet 信息服务 (IIS) 管理器中打开 SharePoint 网站的“属性”对话框。该网站的 Web.config 文件的路径和文件名位于 ASP.NET 窗格的“文件位置”框中。

  8. 在 Web.config 文件中添加以下 Web 部件的安全控件标记:

    <SafeControl Assembly=’TestWebpart’, Version=1.0.0.0, Culture=neutral, PublicKeyToken=1a61461e2e62b800" Namespace="TestWebpart" TypeName="*" Safe="True"/>

    • 可以查看全局程序集缓存中的公钥标记和版本。

  9. 在应用程序中指定程序集名称和命名空间,然后保存所做的更改。

  10. 使用 iisreset /noforce 命令重新启动 IIS。.dll 文件将注册到 Web.config 文件中。

此时,Office SharePoint Server 2007 会检测到已添加的 Web 部件。紧接着,使用以下过程填充 Web 部件库。

填充 Web 部件库

  1. 在网站集的首要网站的“网站操作”菜单上,指向“网站设置”,然后单击“修改所有网站设置”。

  2. 在“网站设置”页上的“库”部分中,单击“Web 部件”。

  3. 在“Web 部件库”页上,单击“新建”。

  4. 在“Web 部件库: 新建 Web 部件”页上,选择最近升级的 Web 部件,然后单击“导入库”。新的 Web 部件将添加到库中以供使用。

有关详细信息,请参阅以下资源:

删除自定义项或使用新的功能恢复自定义项

若要删除自定义项并在 Office SharePoint Server 2007 中创建新的网站,请使用就地升级或逐步升级方法将服务器升级到 Office SharePoint Server 2007。升级网站集并重置所有页面,以使用网站定义的默认页面和 Office SharePoint Server 2007 的新功能。

若使用此方法,网站所有者可以从新外观和功能开始,然后决定是否重新自定义网站。如果需要进行自定义,网站所有者可以使用 Office SharePoint Server 2007 的功能重新创建新的自定义 Web 部件。

示例:升级自定义导航

SharePoint Portal Server 2003 的导航功能具有一些限制。例如,在工作组网站上,可以使用“快速启动”转到网站中的列表和库,但不能转到 SharePoint Portal Server 2003 中的子网站。在将网站升级到 Office SharePoint Server 2007 后,可以通过“快速启动”来访问子网站。

通过使用以下各节中介绍的任一选项,可以将自定义导航组件从 SharePoint Portal Server 2003 网站升级到 Office SharePoint Server 2007。

保留自定义项并忽略新的功能

若要保留自定义项并忽略新的功能,请安装新的版本,但不要升级自定义的网站集。可以并行运行这两个版本,以便继续在 SharePoint Portal Server 2003 上运行网站。由于网站仍是在 SharePoint Portal Server 2003 上运行的,因此自定义项会自动保留。此时可以使用该环境来部署其他的 Office SharePoint Server 2007 网站。

保留自定义项并使用新的功能

若要保留自定义项并使用 Office SharePoint Server 2007 中的新功能,请使用任意升级方法来升级网站。服务器和网站将升级到 Office SharePoint Server 2007。紧接着,升级 SharePoint Portal Server 2003 中设置的自定义项。

通常将自定义导航控件作为 Web 部件实现。可以使用上一节中介绍的过程来创建自定义导航 Web 部件。您可能需要使用 .NET Framework 2.0 版重新编译 Web 部件,以确保代码继续正常工作。重新编译之后,您会在同一页面上看到 Office SharePoint Server 2007 导航控件和自定义导航控件。

删除自定义项或使用新的功能恢复自定义项

若要删除自定义项并在 Office SharePoint Server 2007 中创建新的网站,请使用就地升级或逐步升级方法升级网站,然后根据网站定义重置所有页面。这样您就能够使用从网站定义读取的默认页面和 Office SharePoint Server 2007 的新功能。

若使用此方法,网站所有者可以从新外观和功能开始,然后决定是否重新自定义网站。如果需要进行自定义,网站所有者可以使用 Office SharePoint Server 2007 的功能重新创建新的自定义导航。

以下列表显示了 Office SharePoint Server 2007 中可用于导航的功能:

  • 子网站和网页

  • 排序

  • 全局导航

  • 当前导航

  • 导航编辑和排序

示例:升级自定义 .css 文件和主题

如果希望网站外观与其在 SharePoint Portal Server 2003 中的外观相同,可以将 SharePoint Portal Server 2003 中创建的网站升级到 Office SharePoint Server 2007。

SharePoint Portal Server 2003 中的主题是样式表和图像文件的集合,可用于对 SharePoint 网站应用整体样式。主题作为目录安装在服务器端,该目录包含多个资源文件并需要 SPThemes.xml 文件中的条目。由于在应用模板时不会修改网站集,因此主题是一类风险性较低的自定义项。而效果将通过主题的 .css 文件对网页外观所做的修改在客户端呈现。

通过使用以下各节中介绍的任一选项,可以将 SharePoint Portal Server 2003 网站上的自定义徽标和样式表升级到 Office SharePoint Server 2007。

保留自定义项并忽略新的功能

若要保留自定义项并忽略新的功能,请安装新的版本,但不要升级自定义的网站集。可以并行运行这两个版本,以便继续在 SharePoint Portal Server 2003 上运行网站。由于网站仍是在 SharePoint Portal Server 2003 上运行的,因此自定义项会自动保留。此时可以使用该环境来部署其他的 Office SharePoint Server 2007 网站。

保留自定义项并使用新的功能

若要保留自定义项并使用 Office SharePoint Server 2007 中的新功能,请使用任意升级方法来升级网站。服务器和网站将升级到 Office SharePoint Server 2007。紧接着,升级 SharePoint Portal Server 2003 中设置的自定义项。

如果已创建用于包含自定义项(如自定义网页、列表或库以及 .css 文件或主题)的自定义网站定义,则需要为 Office SharePoint Server 2007 创建新的网站定义,并创建升级过程中需要使用的升级定义文件。

如果将自定义 .css 文件或主题应用于基于标准网站定义的网站,则可以使用任意升级方法升级网站,然后恢复 .css 文件和主题自定义。由于可用的样式和主题随版本的不同而不同,因此您可能需要在新的环境中做出不同的选择。有关此方法的详细信息,请参阅本文后面的“删除自定义项或使用新的功能恢复自定义项”。

借助升级定义文件来升级自定义网站定义

利用升级定义文件,可以根据 SharePoint Portal Server 2003 中的自定义网站定义来升级网站,以便它们使用 Office SharePoint Server 2007 中的功能。升级定义文件将一个内部版本或版本的文件和列表数据映射到后续内部版本或版本中,并指定已升级网站中应放置的其他项。

使用以下过程将 SharePoint Portal Server 2003 中设置的自定义项(例如,自定义列表和库、自定义 .css 文件和自定义徽标)映射到 Office SharePoint Server 2007。升级网站之后,可以查看 SharePoint Portal Server 2003 中自定义的外观。此外,还可以使用 Office SharePoint Server 2007 的功能。

Important重要说明:

至少需要由本地计算机上 Administrators 组中的成员来完成此过程。

使用升级定义文件来映射 SharePoint Portal Server 2003 中设置的自定义项

  1. 运行 Office SharePoint Server 2007 的安装程序。

    Important重要说明:

    此时不要运行 SharePoint 产品和技术配置向导。

  2. 将自定义 WEBTEMP 文件(例如,名为 WEBTEMPspscustom.XML 的文件)从 <安装驱动器>\Program Files\Common Files\Microsoft Shared\Web server extensions\60\TEMPLATE\2052\XML 文件夹复制到 <安装驱动器>\%COMMONPROGRAMFILES%\Microsoft shared\Web server extensions\12\TEMPLATE\2052\XML 文件夹。

    Note注意:

    Office SharePoint Server 2007 中创建的自定义网站定义必须基于 SharePoint Portal Server 2003 中创建的自定义网站定义。因此,请记录自定义网站定义所基于的网站定义。例如,如果根据门户网站定义创建了原始网站定义,则原始网站定义很可能是基于 SPS 网站定义的副本。

  3. 通过执行下列步骤,可以在 Office SharePoint Server 2007 中创建自定义网站定义:

    1. 从 <安装驱动器>\%COMMONPROGRAMFILES%\Microsoft Shared\Web server extensions\12\TEMPLATE\SiteTemplates 复制之前作为 SharePoint Portal Server 2003 中的自定义网站定义基础的网站定义所在的文件夹,并将其粘贴到相同的位置以创建新文件夹。

    2. 重命名该文件夹以匹配 SharePoint Portal Server 2003 中的自定义网站定义。在本示例中,当创建自定义网站定义时,会将包含 SharePoint Portal Server 2003 的标准网站定义的 SPS 文件夹按照路径 …\60\TEMPLATE\SiteTemplates 复制到 spscustom。因此,请在 …\12\TEMPLATE\SiteTemplates 路径中重命名 Office SharePoint Server 2007 spscustom 的自定义网站定义的新文件夹。

  4. 打开位于 <安装驱动器>\%COMMONPROGRAMFILES%\Microsoft Shared\Web server extensions\12\TEMPLATE\SiteTemplates\spscustom\XML 的 spscustom 文件的 ONET.XML。

  5. 将此 ONET.XML 文件与 SharePoint Portal Server 2003 自定义网站定义的 ONET.XML 文件进行比较,然后升级此文件以包含所需更改。

  6. 导航到 <安装驱动器>\%COMMONPROGRAMFILES%\Microsoft Shared\Web server extensions\12\Config\Upgrade,复制 SPSUpgradePremium.XML,然后用唯一名称(如 SPSUpgradecustom.XML)重命名该文件。

  7. 打开 SPSUpgradecustom.XML 文件并更改 WebTemplate ID。

       <WebTemplate

          RemoveSiteExternalSecurityProvider="true"

          ID="10001" <!-- We recommend that you change the ID to above 10000-->

          LocaleId="*"

          FromProductVersion="2"

          BeginFromSchemaVersion="0"

          EndFromSchemaVersion="0"

          ToSchemaVersion="10">

          <Lists>

  8. 在 SPSUpgradecustom.XML 文件中,替换网站定义名称。

    在本示例中,已将“任务”列表的所有 \SPS\ 实例替换为 \spscustom\。

    <File

    FromPath="{LocaleId}\spscustom\Lists\tasks\active.aspx"

    ToPath="pages\viewpage.aspx"

    />

    <File

    FromPath="{LocaleId}\spscustom\Lists\tasks\AllItems.aspx"

    ToPath="pages\viewpage.aspx"

    />

    <File

    FromPath="{LocaleId}\spscustom\Lists\tasks\byowner.aspx"

    ToPath="pages\viewpage.aspx"

    />

    <File

    FromPath="{LocaleId}\spscustom\Lists\tasks\DispForm.aspx"

    ToPath="pages\form.aspx"

    />

    <File

    FromPath="{LocaleId}\spscustom\Lists\tasks\duetoday.aspx"

    ToPath="pages\viewpage.aspx"

    />

    <File

    FromPath="{LocaleId}\spscustom\Lists\tasks\EditForm.aspx"

    ToPath="pages\form.aspx"

    />

    <File

    FromPath="{LocaleId}\spscustom\Lists\tasks\MyItems.aspx"

    ToPath="pages\viewpage.aspx"

    />

    <File

    FromPath="{LocaleId}\spscustom\Lists\tasks\NewForm.aspx"

    ToPath="pages\form.aspx"

    />

  9. 将自定义网站定义的新 ID 条目添加到 PreUpgradescanconfig.XML 文件中,该文件位于 <安装驱动器>\%COMMONPROGRAMFILES%\Microsoft Shared\Web server extensions\12\Bin。

    <?xml version="1.0" encoding="utf-8"?>

       <configurations>

          <customTemplate id="20"/>

          <customTemplate id="21"/>

          <customTemplate id="22"/>

          <customTemplate id="30"/>

          <customTemplate id="31"/>

          <customTemplate id="32"/>

          <customTemplate id="33"/>

          <customTemplate id="34"/>

          <customTemplate id="35"/>

          <customTemplate id="36"/>

          <customTemplate id="10001"/> <!-- Enter the template ID which you mentioned in SPSUpgradecustom.XML file -->

       </configurations>

  10. 通过执行下列步骤运行升级前扫描工具。

    1. 单击“开始”,然后单击“运行”。

    2. 在“打开”框中键入 cmd。此时命令提示符将出现。

    3. 在命令提示符处,将目录更改为 <安装驱动器>\%COMMONPROGRAMFILES%\Microsoft shared\Web server extensions\12\Bin,键入以下命令,然后按 Enter:

      prescan /C preupgradescanconfig.xml /ALL

  11. 运行 SharePoint 产品和技术配置向导。完成该向导之后,将显示管理中心主页。

  12. 在“管理中心”的“操作”页上的“升级并迁移”部分中,单击“网站内容升级状态”。此时可以查看需要升级的所有网站。

  13. 单击要升级的网站。该网站随即将升级到 Office SharePoint Server 2007。

删除自定义项或使用新的功能恢复自定义项

若要删除自定义项并在 Office SharePoint Server 2007 中创建新的网站,请将服务器升级到 Office SharePoint Server 2007,然后升级网站以使用 Office SharePoint Server 2007 的新功能。通过执行此操作,网站所有者将能够重新设计其网站。通过使用 Office SharePoint Server 2007 的新功能,网站所有者可以创建新的网站并重新设置自定义项。虽然此方法并非真正的升级,但可用来改进网站的体系结构。

若要忽略自定义项并在 Office SharePoint Server 2007 中创建新的网站,请使用就地升级或逐步升级方法升级网站,然后根据网站定义重置所有页面。这样您就能够使用网站定义的默认页面和 Office SharePoint Server 2007 的新功能。

通过使用此方法,可以从 Office SharePoint Server 2007 的新外观和功能开始,然后确定是否重新进一步自定义网站。如果需要进行进一步的定义,可以设计新的自定义样式表来利用 Office SharePoint Server 2007 的功能。

虽然主题在 Office SharePoint Server 2007 和 SharePoint Portal Server 2003 中所起到的作用是相同的,但 .css 文件应用的标记会有所不同。大多数现有的 SharePoint Portal Server 2003 自定义主题在 Office SharePoint Server 2007 环境中不会正确呈现。在大多数情况下,您必须重新创建自定义主题,以使其正确呈现。在升级过程中,可以考虑使用母版页(Office SharePoint Server 2007 中的一个新选项)。

母版页为网站中的所有网页提供了所需的外观和标准行为。将母版页与布局页一起使用,可以生成同时包含母版页的布局和布局页的内容的输出。由于 Office SharePoint Server 2007 是基于 ASP.NET 2.0 构建的,因此它支持用于定义所有网页的公共元素的母版页。可以在母版页中指定网站的所有共享元素,也可以将特定于内容页的元素添加到内容页。

有关为 Web 内容管理网站创建 Office SharePoint Server 2007 自定义母版页和页面布局的信息,请参阅以下资源:

下载此书籍

本主题包含在以下可下载书籍内,以方便您阅读和打印:

有关可下载书籍的完整列表,请参阅 Office SharePoint Server 2007 的可下载书籍

另请参见

显示: