SharePoint 应用程序构建简介

重要:  本文是由机器翻译的,请参阅免责声明。请在 此处 中查找本文的英文版本以便参考。

本文内容

简介

用工具和技术

应用程序体系结构和开发方法

实现通用设计模式

构建模板

摘要

资源

简介

Windows SharePoint Services 3.0是提供集成的组合的协作和通信服务的 Windows Server 技术。此外,为基于 Web 的业务应用程序开发平台。利用这些功能,Microsoft 开发了四十应用程序模板为 Windows SharePoint Services 3.0提供的框以满足特定的业务流程协调技术支持或跟踪市场营销活动,如图 1 中的示例中所示的解决方案。

集成营销活动跟踪器应用程序的主页视图
图 1︰ 的集成营销活动跟踪器应用程序的主页视图

Microsoft 开发这些免费的可下载的应用程序模板,要在部署后立即可用。但是,客户和合作伙伴还可以使用这些应用程序模板作为起始点的更多自定义解决方案,或他们可以将其用作构建自己的复杂的Windows SharePoint Services 3.0应用程序使用Microsoft Office SharePoint Designer 2007教学示例。

本文的目的是为了说明如何 Microsoft 开发的应用程序模板中,确定如何处理Windows SharePoint Services 3.0和Office SharePoint Designer 2007,使各客户和合作伙伴的目标是创建自己的应用程序中的核心功能的最佳做法。文章不替代Windows SharePoint Services 3.0 SDK,也不是其主要开发人员资源。开发人员应使用 SDK 通常了解如何扩展Windows SharePoint Services 3.0。

这篇文章应为新型网站设计者的资源。Windows SharePoint Services和Office SharePoint Designer 2007使其可以生成太多应用程序功能通过用户界面,因为高级的开发技能不是必需构建丰富的应用程序。当然,这篇文章并介绍某些自定义代码实现的特别难删除设计模式,但整体方法可以访问的非开发人员,并显示与记住该访问群体。开发人员可能想要快速阅读工具和方法的最早部分和更加关注设计模式和如何实现那些设计模式中的特定示例的说明。

在文章结构方面的第一节,用工具和技术,提供了Windows SharePoint Services 3.0和Office SharePoint Designer 2007中构建应用程序中使用的功能的概述。一般情况下,下一步部分,应用程序体系结构和开发方法,介绍 Microsoft 跨所有应用程序模板使用的方法。方法是目的的远而无需编写自定义代码的解决方案、 如何将使用,并由谁,和技术所提供实检查的潜在顾客获取您的常识性方法。结束与一个流程,用于标识自定义代码或其他自定义的工作将需要的区域。

下一节的文章,实现常见设计模式,重点介绍如何使用Windows SharePoint Services和Office SharePoint Designer 2007强度解决常见的应用程序设计要求,如如何在列表中创建自定义操作。这是的核心文章,并描述为定期跨所有应用程序模板 (和事实上,您可能会遇到的任何应用程序) 的设计模式的方法。本节提供的五个设计模式,包括使用与Windows SharePoint Services UI 或Office SharePoint Designer 2007和一些自定义代码的指导每个示例。

构建模板,一文中的最后一节介绍了如何创建使用Office SharePoint Designer 2007模板文件时实际。此外介绍了其他问题,例如本地化。

完成这篇文章,您应如何设计和构建应用程序,很好地了解如何通过构建开始Windows SharePoint Services 3.0,包括构建链接的列表、 自定义列、 库、 工作流,和等等,直接在网站如何再打开该网站Office SharePoint Designer 2007进行进一步自定义设置、 创建自定义窗体中的,添加自定义代码来更改某些行为创建自定义工作流,和等等,以及,最后,如何创建应用程序模板本身,并将其部署的用法。

返回页首

用工具和技术

有多种技术和组合以使其可以比以往更轻松地创建应用程序的工具。技术侧新功能,如工作流支持意味着网站设计者不必编写代码以向应用程序中显示工作流。Office SharePoint Designer 2007、 Microsoft Visual Studio 2005,和其他工具进行工具方它可以使用得越来越到执行操作,用于很难完成代码 (通常无代码)。

一般情况下,Microsoft 具有跨所有这些工具和技术的详细信息和多个困难管线投入移动到基础结构本身,以便您可以将更多设计器和更少的开发人员追踪策略。换言之,Microsoft 已经太多辛勤工作一次,以便您可以只需使用这些功能在您的应用程序中直观地通过用户界面。

在准备了解如何各种技术和工具一起在应用程序创建过程中,是以下各部分讨论Windows SharePoint Services 3.0、 Office SharePoint Designer 2007和其他技术专门列相关的新功能和性能。对于更全面讨论,查看本文末尾的资源。

Windows SharePoint Services 3.0

Windows SharePoint Services 3.0包含某些功能强大的新功能。以下新功能和功能特别关心构建自定义应用程序,并且在您将看到其再次提到的后面部分中的许多︰

  • 库和列表    Windows SharePoint Services 3.0引入了许多新库和列表类型,可用于应用程序的基础。幻灯片库、 专为存储和管理可重用Microsoft Office PowerPoint 2007幻灯片库、 数据连接库,和其他人,包括新库的类型。

  • 内容类型    内容类型是整个Windows SharePoint Services 3.0使用的核心概念。内容类型旨在帮助用户更有意义的方式组织其 SharePoint 网站上的内容。内容类型是内容的可重用的设置,可应用于特定类别集合。内容类型使您能够集中管理和重复使用元数据和文档或项目类型的行为。例如,您可以关联的工作流和事件到内容类型,而不必向多个文档或库添加工作流和事件。

  • 网站栏   网站栏为列定义提供的中心,可重用的模型。当您创建网站栏时,使用此列的每个列表都具有相同的定义,您不需要重现每个列表中的列。网站栏提供最终用户能够从预定义的一组列这一点非常有用他们的列表中选择一种的方法。因此它们可用来定义已知列表模板集中的列不仅用户提供的路径,使用特殊列可以具有自定义的含义。

  • 工作流    在Windows SharePoint Services 3.0,工作流可以将业务流程附加到列表和库中的项目。此过程可以控制几乎任何方面的项目,包括该项目的生命周期。例如,您可以创建文档传送到一系列以供审批的用户的简单工作流。通常情况下,网站设计者或开发人员创建特定工作流。网站设计者可以使用Office SharePoint Designer 2007使用工作流设计器向导环境中,创建工作流和开发人员可以使用 Visual Studio 2005 创建更强大和复杂的工作流。

  • 功能框架    Windows SharePoint Services 3.0包含一个新的结构,称为"功能"。功能打包Windows SharePoint Services元素,可帮助用户实现特定目标或任务。某项功能包含一个或多个元素。元素是一个原子Windows SharePoint Services概念。Windows SharePoint Services 3.0功能提供作为开发人员提供Windows SharePoint Services解决方案的自定义功能,您可以利用整个框架。功能还提供了一种简便方式与管理员以添加或删除的功能打包的片段。

  • 事件增强功能   事件分为两个主要类别︰

    • 列表事件   核心事件,包括更改、 添加和删除列表项和列表列 (架构更改)

    • 简单网站事件   删除的网站和网站集

      事件是"由"ABCed"姓名格式表示的事件之后"同步"之前"由"XYZing"姓名格式,表示的事件或异步。

  • 移动设备访问     Windows SharePoint Services 3.0提供了允许列表,以便在移动设备上正确呈现的新功能。当用户使用移动设备浏览到Windows SharePoint Services 3.0网站时,其 Web 浏览器将重定向到移动特定版本的呈现网站内容和最适合于设备的格式列表的网站。

Office SharePoint Designer 2007: 卓越工具来构建 SharePoint 应用程序

Office SharePoint Designer 2007专门可帮助您创建和自定义网站和工作流与 SharePoint 产品和技术 (Windows SharePoint Services 3.0和Microsoft Office SharePoint Server 2007) 生成。提供工具,IT 专业人员和解决方案的创建者需要开发基于 SharePoint 的应用程序和增强组织灵活性和业务流程自动化的工作流解决方案。使用Office SharePoint Designer 2007,您不必使用传统的程序编码语言或技术执行下列操作︰

  • 创建无代码数据视图和窗体上各种数据源,如 XML 文件,例如 Microsoft SQL Server 2005、 和 Web 服务的 SQL 数据库。

  • 创建复杂、 动态、 无代码工作流。

  • 执行页面布局和设计。

  • 创建母版页。

  • 编辑和应用级联样式表 (CSS)。

  • 生成 Web 部件页并连接 Web 部件以创建复杂的业务应用程序。

Visual Studio 2005

应用程序添加自定义代码或创建自定义工作流,可以使用 visual Studio 2005。您可以使用 Visual Studio 2005 设计器的 Windows Workflow Foundation 创建工作流模板和自定义工作流活动。在工作流,以及设计窗体,用于通过工作流的用户进行通信工作流关联和运行时期间,您可以包括代码。

Visual Studio 2005 扩展名Windows SharePoint Services 3.0是一个免费下载该捆绑包一起开发自定义 SharePoint 应用程序使用 Visual Studio 2005 工具一组。捆绑包的 Web 部件、 网站定义、 列表定义和独立实用程序,SharePoint 解决方案生成器从现有的 SharePoint 网站生成网站定义项目中包括 Visual Studio 项目模板。程序允许开发人员使用的浏览器和Office SharePoint Designer 2007先通过使用 Visual Studio 2005 创建代码自定义其网站的内容。

取消 Windows SharePoint Services 3.0 的 Visual Studio 2005 扩展,但您仍然可以Visual Studio 2008 扩展名为 Windows SharePoint Services 3.0、 v1.3

Microsoft Office Access 2007

Microsoft Office Access 2007使您可以创建跟踪应用程序,提供了丰富的用户体验的输入、 管理和报告数据目标方案。有关如何设计、 创建和共享 Access 模板的详细信息,请参阅簿Rational 指南到 Microsoft Office Access 2007 模板

方法和常规技术

在下一节中介绍的开发方法的上下文中,创建一个应用程序的基本整体步骤是︰

  1. 决定是否需要网站定义或网站模板。

  2. Windows SharePoint Services 3.0或Office SharePoint Server 2007中创建的核心网站。

  3. 使用Office SharePoint Designer 2007打开该网站,进行修改,等等。

  4. 使用 Visual Studio 2005,,如有必要,若要创建其他自定义代码、 自定义工作流等。

返回页首

应用程序体系结构和开发方法

为任何开发项目时,规划和构建Windows SharePoint Services应用程序将具有更成功的机会如果按照经过验证的方法。本节介绍设计的所有可下载的应用程序模板中使用的 Microsoft 的方法。不奇怪在方法在这里,特别是对于经验丰富的开发人员,会出现,但它考虑一些细节的 SharePoint 环境中,并且会反映教训由 Microsoft,以便它在此上下文中的值。同样,此部分将非开发人员知道如何使用Windows SharePoint Services 3.0和Office SharePoint Designer 2007对最有用。

简言之,方法是开头考虑通常应用程序需要执行操作,需要使用它,等等。然后其外观更详细地介绍如何需要流应用程序中的数据,它需要将存储,和关系有哪些不同方面的数据之间。使用数据模型的使用方案更好地理解,方法调用并开始构建出Windows SharePoint Services 3.0,构建列表、 库、 工作流,等等,反复,开始的外观和行为通常为所需的点到中的应用程序的粗糙版。最后,用于标识呼叫的方法,并撰写调整和真正使应用程序所需的自定义适合您的业务流程需求。

定义应用程序的功能要求

虽然不必要的构建Windows SharePoint Services解决方案之前有高度详细的技术规范文档,就需要有很好地了解该应用程序如何需要函数。上一个点看起来很明显,但许多开发人员遇到困难的利益干系人的想法他们想要在应用程序和他们真正需要什么为业务流程成功之间的不匹配 (当然,利益干系人通常意识到此之后他们看到几乎完成的应用程序 !)。

所有相关信息就是说,从头开始意味着收集功能的要求和考虑需要完成的应用程序。例如,如果您需要项目跟踪解决方案,将要标识,至少下列︰

  • 业务流程中的参与者/角色是什么?   在此例中,项目所有者创建项目并维护任务、 问题和等等,有关信息和任务所有者有问题和为其分配任务需要完成其作业进行交互。经理需要查看有关总体项目状态的汇总信息。

  • 不同参与者需要哪些用户界面?   在此例中,项目所有者、 任务所有者和经理所有需要不同的视图与他们的活动相关。任务所有者应该能够看到为其分配,例如,而项目所有者应该能够看到所有过去的所有问题截止的问题。

  • 业务流程看起来是什么样?   在此例中,项目所有者创建项目、 里程碑、 任务和预算条目并随着时间的推移然后跟踪进度。项目所有者跨所有条信息,具有频繁访问,而任务所有者需要时出现分配给他们对数据进行操作。

  • 数据位于何处?   将仅中使用的数据Windows SharePoint Services,或将需要访问外部数据 (从数据库中,通过 Web 服务,通过业务数据目录,依此类推),以及您需要存储在Windows SharePoint Services外部数据?

  • 数据之间的关系是什么?   在此例中,我们需要项目项、 里程碑项和任务和问题的项目,并且他们有一个逻辑层次结构。用户将数据点,,因此等预算、 的天数,以及类似的内容。

若要查找的大部分这些问题的答案的绝佳方式是逐字一些时间和使用的一些变体 (创建几个项目,将任务分配给两个或三个人员,跨项目,依此类推) 循环业务流程白板上绘制的图片。概念,跟踪应用程序的项目是一个非常简单的设计,并要求都非常此时清除。

验证您的数据模型

尽管已讨论了数据模型,这是非常重要,需要更深入地分析。Misunderstanding 数据模型可能要求您以使引人注目、 整个系统后来更改,因此很重要以获取正确。

请务必了解相关的信息,片段部分元信息描述和定义在给定的信息所在业务流程中的数字的数字。在 project 中跟踪大小写,我们需要了解更多比没有项目、 里程碑和任务和问题。我们需要了解项目的顶级项,它可以有多个里程碑。项目也可以有多个任务和问题。

确定组件和它们之间的关系

此时,我们有很好的应用程序功能说明。下一步是规划体系结构并决定如何使用各种技术和Windows SharePoint Services 3.0和Office SharePoint Designer 2007的功能。每个应用程序将涉及的特性和功能,用工具和技术,早期的节中介绍的某些组合包括︰

  • 列表和查找

  • 自定义列表视图 (分组、 排序和筛选等,通过Windows SharePoint Services UI)

  • 工作流

  • 自定义页面和自定义数据视图中Office SharePoint Designer 2007

列表和查找真正实现数据模型。以便在项目跟踪应用程序的上下文中,您将使用一个列表项目,另一个列表 (带到项目列表的查阅字段) 的里程碑、 该项目的查阅字段与另一个列表有关的问题,列表,依此类推。对于自定义页面视图,可能只需要设置的默认视图向组状态和排序的运行状况。

整体,另一个白板练习按顺序,只需创建应用程序模型,在这里,识别用于每段的技术。

开始构建应用程序组件

同样,不需要此时了某个非常精确技术指标文档。非常重要,假设您有基本数据流和用户界面要求,只需开始构建良好控点。

逐字,这意味着创建新网站使用现成的模板之一中Windows SharePoint Services 3.0,或创建您自己的网站模板提前和构建基础的新网站实例。对于许多应用程序,您将可能只需使用工作组网站或空白网站模板为基础。

在 project 中跟踪应用程序,首先需要执行是创建四个列表 (项目列表、 项目任务、 项目问题和项目里程碑)。对于每个这些列表,然后,创建自定义列。Windows SharePoint Services 3.0允许您创建多种不同的列类型,包括选项数字人员或组,和查找(已在该网站的信息)。在 Microsoft project 中跟踪应用程序模板项目列表使用许多种,图 2 中所示。

列表中的自定义表
图 2︰ 在列表中的自定义列

运行状况列基于选择列类型,预算列中数字列 (使用货币),等等。

在项目里程碑列表中,使用查阅列,以便可以与项目中的父子关系关联里程碑。创建查找列是只需选取所需外观的列表,然后选择从该列表列 (Windows SharePoint Services填充下拉列表自动),如下图 3 中所示。

定义“查找”列以从另一列表提取信息
图 3︰ 定义查阅列以从另一列表提取信息

此时,您可以在工作某些应用程序逻辑,构建简单工作流时创建新项目通知成员。您也可以开始使用Windows SharePoint Services UI 排序和筛选器与您的首选项来创建自定义视图的列表中。

确定需要在应用程序的自定义

功能而言,很多项目跟踪应用程序已经只需Windows SharePoint Services UI 以实现。此时,我们已见操作的工作也不足,但无法通过Windows SharePoint Services UI,依此类推完成的内容。我们将要充分利用Office SharePoint Designer 2007某些的区域是︰

  • 工作流中的应用程序逻辑   您可以使用现成Windows SharePoint Services 3.0和Office SharePoint Server 2007中的工作流必须指定用户或组向其分配任务。为我们跟踪应用程序的项目,我们需要动态确定的收件人,基于问题或任务中的所有者属性工作流操作的方法。我们可以使用Office SharePoint Designer 2007构建这种解决方案的动态无代码工作流。

  • 仪表板和管理器视图   我们需要一种方法,以显示所有项目的组合的视图所有预算,依此类推。我们可以轻松地构建无代码数据视图,以显示加入和组合仪表板的信息。

  • 单级父子关系   创建任务时,有几个易用性问题。或许我们希望具有到特定项目,具体取决于我们将在哪些页面的任务默认值。我们可以使用Office SharePoint Designer 2007添加逻辑自动链接到另一个项目。

Microsoft 使用相同的迭代方法时构建四十的应用程序模板,并且一致的方法,使用一致的最佳做法、 决策树等,一组所开发可以为应该进行优化本身中Windows SharePoint Services 3.0和应该做些什么使用Office SharePoint Designer 2007和其他工具。这篇文章的下一节讨论这些方法、 标识五个"设计模式"和实现,他们应该的方式引用的示例从许多途中应用程序模板。在这种情况下,此文档的其余部分是更详细、 更深入的技术比方法讨论。

返回页首

实现通用设计模式

在此部分中,我们将介绍如何 Microsoft 实际使用它们的上下文中的五个基本设计模式。因此,我们将引用的数目不同示例跨的模板,包括代码示例和一些分步指导,在合适的位置。开发人员可以找到此部分以及如何实际生成非常有用,应用程序模板的其余部分,但它编写可访问的非开发人员也。

若要开始,设计模式是︰

  • 自定义窗体   创建自定义外观和体验,使业务流程中的特定点 (包括仅公开相应的属性允许修改,或在给定阶段是相关) 的指导操作。

  • 操作流   创建明确定义导致右主角正确的位置的操作 (为此,我们需要对正在执行的操作和参与者采取行动敏感的好的导航控件)。

  • 单级父子关系   创建两个或多个 SharePoint 列表中的查找和引用之间的关系。

  • 工作流   使用Office SharePoint Designer 2007创建基于 Windows Workflow Foundation 的业务流程。

  • 仪表板   使用 Web 部件在一个位置创建松散信息在整个网站的统一的视图。

使用自定义窗体

自定义窗体中自定义数据输入的用户界面中Windows SharePoint Services至关重要。就像自定义列表视图用于不同方式显示列表数据,自定义窗体用于演示捕获用户输入的不同方法。由于各种原因,具体取决于业务需求,需要创建此类自定义窗体可能会出现。

基于任务的自定义

业务流程要求用户执行影响业务流程中的不同位置的数据的具体操作。一个好的业务流程解决方案,便于用户通过公开正确的信息在流程中的每个阶段完成工作。

默认情况下, Windows SharePoint Services包括编辑窗体中的每个列表。但是,此表单可能不会显示域最佳设置为特定的业务流程,阶段和时,它将不排列这些字段可以清除所需的操作的方式。为了确保用户能够轻松地编辑正确的信息,在执行操作时,您可以创建自定义窗体的每个操作。

Bug 跟踪解决方案使用自定义编辑窗体,这样在每个阶段的 bug 跟踪过程,便立即清除 bug 项应进入哪些信息。Bug 跟踪过程中的每个操作具有其自己的窗体。例如,当用户选择解决 bug,被定向到分辨率页面 (Resolve.aspx) 中。此页面使他们可以输入的 bug 分辨率和解决 bug 的人员的名称。用户可单击解决按钮以提交他们修改。这将提供操作流易于使用并帮助消除错误或缺少的信息。

创建自定义编辑窗体可以相对容易地使用Office SharePoint Designer 2007执行操作︰

  1. 创建默认 EditForm.aspx 的副本并将其重命名。

    重要: 值得您创建的默认 EditForm.aspx 副本并将其重命名为此过程的第一步。如果执行步骤 2 原始 EditForm.aspx 页上,您将无法恢复中断列表。

  2. 删除列表表单 Web 部件在您的新编辑窗体。

  3. 插入数据视图,其中包含您想要公开的数据 (在插入菜单上,单击SharePoint 控件,然后单击自定义列表表单)。

  4. 使用Insert方法, Office SharePoint Designer 2007会自动创建窗体的保存按钮。下面的代码显示保存按钮的自定义 HTML 的示例。

<input type="button" value="Save" name="btnSave" onclick="javascript: {ddwrt:GenFireServerEvent('__commit;__redirectsource')}"/>

导航

一旦您创建了与您的角色对应的页,您仍需要提供的用户可以快速访问相关的仪表板的方法。在事件计划解决方案,方法是使用 XSL 模板来创建链接到当前基于其角色的用户的正确的仪表板。

一个限制这种方法是,如果添加更多的角色为您的解决方案,提供给这些角色的自定义仪表板将需要创建的其他.aspx 页面。

请务必注意此方法不会添加任何附加控制谁在网站上有权访问信息。任何用户理论上仍然可以查看解决方案中的任何信息。

分配给用户的角色

有多种方法来创建角色,并将其分配给用户。此问题的最佳解决方案将相差根据特定的应用程序或组织的要求。Windows SharePoint Services不提供配置现成的角色分配的方式。在某些情况下,则可能足够配置角色后已部署网站或若要允许用户为自己分配角色需要。

在事件计划解决方案,用户可以注册最适用于它们的角色。这是通过在计划活动过程工作区的首页上自定义 Web 部件。

此设计模式的其他示例

使用自定义窗体的另一个服务器管理员示例,请参阅Windows SharePoint Services 3.0 出借库应用程序模板

网站管理员示例中,请参阅Windows SharePoint Services 3.0 的制造流程管理应用程序模板

控制流操作

现实世界 Web 应用程序后业务流程建模几乎不包含在单个网页或 Web 部件。相反,范围涵盖多个这样的组件,每个负责业务流程中的不同步骤。因此,应用程序的组件之间导航顺利地轻松地将成为应用程序设计的一个重要方面。一个关键设计模式,然后是以控制流操作将业务流程操作绑定导航,以便执行特定操作将用户引导到相应的下一个页面或下一步操作。

控制操作流的一种方法是使用Windows SharePoint Services 3.0,以便您可以将您自己的操作添加到库中的项目嵌入上下文按钮中的自定义操作功能。此功能的一个限制是操作必须硬编码,并且无法参数化的项目或某些其他动态值的名称。

另一种方法,允许您将动态操作集成到您的业务流程,为要创建自定义 SharePoint 列表和使用"计算的字段"。Bug 跟踪应用程序模板使用自定义的 Bug 列表来跟踪 bug 状态和信息。使用计算的字段,Microsoft 是无法将自定义链接合并到列表视图,以便用户可以对 bug,如"激活"或"解决",请执行操作,并且这些操作的每个安装了适当的自定义让用户的导航窗体 (请参阅上一设计模式) 执行什么激活或解决 bug 所必需。

计算的字段是Windows SharePoint Services 3.0 ,您可以为 SharePoint 列表中的一列应用自定义呈现模式的一项功能。因此,业务流程操作 (激活 bug) 公开为导航到正确的自定义窗体用户执行该业务操作的列中的按钮。

计算的字段支持条件逻辑来选择是否显示操作。例如,如果已激活 bug,我们不显示激活按钮。通过将字段元素添加到列表定义的架构 XML 文件添加到 SharePoint 列表计算的字段。<Field ID="{EA1D0509-767B-4576-ABEF-FC66647037B9}" Name="ActivateBug" Group="_Hidden" Type="Computed" Sortable="FALSE" Filterable="FALSE" DisplayName="$Resources:tsa,Activate_DispName;" ClassInfo="Icon" AuthoringInfo="$Resources:core,Linked_Item;"> <FieldRefs> <FieldRef ID="{94f89715-e097-4e8b-ba79-ea02aa8b7adb}" Name="FileRef"/> <FieldRef ID="{3f277a5c-c7ae-4bbe-9d44-0456fb548f94}" Name="Status"/> <FieldRef Name="ID" /> </FieldRefs> <DisplayPattern> <IfEqual> <Expr1>$Resources:core,Status_Active;</Expr1> <Expr2> <Field Name="Status"/> </Expr2> <Then> </Then> <Else> <HTML><![CDATA[<a href="]]></HTML> <HttpHost/> <UrlDirName> <HTML>/</HTML> <LookupColumn URLEncodeAsURL="TRUE" Name="FileRef"/> </UrlDirName> <HTML><![CDATA[/Activate.aspx?ID=]]></HTML> <Column HTMLEncode="TRUE" Name="ID"> </Column> <HTML><![CDATA[" onclick="GoToLink(this);return false;" target="_self">]]></HTML> <HTML><![CDATA[<img border="0" alt="]]></HTML> <HTML>$Resources:tsa,Activate_DispName;</HTML> <HTML><![CDATA[" src="]]></HTML> <HttpHost/> <UrlDirName> <HTML>/</HTML> <LookupColumn URLEncodeAsURL="TRUE" Name="FileRef"/> </UrlDirName> <HTML><![CDATA[/IMNBUSY.GIF">]]></HTML> <HTML><![CDATA[</a>]]></HTML> </Else> </IfEqual> </DisplayPattern> </Field>

此代码显示的 XML 激活计算字段。此字段显示可单击橙色状态链接,是否尚未激活 bug。用户可以单击该链接以转到激活窗体针对此错误。

FieldRefs元素包括 bug 列表中的状态域的域引用。此引用使我们如何自定义呈现基于 bug 状态此计算字段。

计算列的DisplayPattern字段包含的计算和呈现模式的列。在此示例中,我们使用 if 然后还语句来确定是否处于活动状态的 bug 的状态。如果 bug 处于活动状态,我们显示任何内容激活字段中。如果 bug 处于非活动状态,将显示在Else元素的 HTML。此 HTML 代码为图像,用户可以单击以激活 bug 的链接。

此设计模式的其他示例

控制操作流程的另一个服务器管理员示例,请参阅Windows SharePoint Services 3.0 出借库应用程序模板

网站管理员示例中,请参阅Microsoft Windows SharePoint Services 3.0 的员工活动网站应用程序模板

使用父子关系

业务解决方案通常需要可以查看和其他数据的关系的上下文中使用的数据。例如,如下所示与项目跟踪应用程序,项目、 任务、 问题和里程碑均存储在其自己的 SharePoint 列表。每个任务、 问题和里程碑是与项目列表上的项目相关联。维护列表和其他列表中包含的"子"信息之间的关系会带来挑战。

创建新的列表项和现有之间的默认链接

当用户要创建与父列表中的项目相关的列表项时遇到一个常见的挑战。在多个项目中跟踪解决方案,发生这种情况时用户尝试创建对现有项目相关的任务。利用框中,在Windows SharePoint Services 3.0自动创建正在创建的列表项和一个存在之间的关系中没有机制。

从项目详细信息页面 (DispForm.aspx) 在多个项目跟踪应用程序模板,用户可以创建新任务,在该项目下。新任务创建页面 (NewForm.aspx) 包含用户可以在其中选择此任务的父项目的下拉菜单。若要使此下拉默认到父项目显示在从导航的用户页面上,我们传递父项目的 ID NewForm.aspx 到查询字符串中。接下来,使用 JavaScript,我们分析出的项目 ID 值,并且在下拉列表框中选择相关的项目。<a href="../ProjectTasks/NewForm.aspx?ProjectID={$ProjectID}" onclick="javascript:this.href = unescapeProperly(escape(this.href)); GoToLink(this); return false;" target="_self">Create a new Task...</a>

此代码显示从 DispForm.aspx 的链接。请注意,查询字符串中包括 ProjectID。

加载时 NewForm.aspx,JavaScript 分析查询字符串中的项目 ID,并更改项目下拉列表,以便选择了正确的项目。

JavaScript 包含在内容编辑器 Web 部件上 NewForm.aspx。Web 部件设置为具有无镶边,以便它不会显示在页面上除非页处于编辑模式。JavaScript 位于内容编辑器区域内。<script type="text/javascript"> _spBodyOnLoadFunctionNames.push("fillDefaultValues"); function fillDefaultValues() { var qs = location.search.substring(1, location.search.length); var args = qs.split("&"); var vals = new Object(); for (var i=0; i < args.length; i++) { var nameVal = args[i].split("="); var temp = unescape(nameVal[1]).split('+'); nameVal[1] = temp.join(' '); vals[nameVal[0]] = nameVal[1]; } setLookupFromFieldName("Project", vals["ProjectID"]); setLookupFromFieldName("Milestone", vals["MilestoneID"]); } function setLookupFromFieldName(fieldName, value) { if (value == undefined) return; var theSelect = getTagFromIdentifierAndTitle("select","Lookup",fieldName); if (theSelect == null) { var theInput = getTagFromIdentifierAndTitle("input","",fieldName); ShowDropdown(theInput.id); var opt=document.getElementById(theInput.opt); setSelectedOption(opt, value); OptLoseFocus(opt); } else { setSelectedOption(theSelect, value); } } function setSelectedOption(select, value) { var opts = select.options; var l = opts.length; if (select == null) return; for (var i=0; i < l; i++) { if (opts[i].value == value) { select.selectedIndex = i; return true; } } return false; } function getTagFromIdentifierAndTitle(tagName, identifier, title) { var len = identifier.length; var tags = document.getElementsByTagName(tagName); for (var i=0; i < tags.length; i++) { var tempString = tags[i].id; if (tags[i].title == title && (identifier == "" || tempString.indexOf(identifier) == tempString.length - len)) { return tags[i]; } } return null; } </script>

_ SpBodyOnLoadFunctionNames.push命令脚本在加载时运行的列表中添加fillDefaultValues函数。

FillDefaultValues函数捕获项目 ID 或里程碑 ID 从查询字符串,并将其传递给setSelectedOptions。然后setSelectedOptions父项目 id 设置下拉菜单中的值。

此设计模式的其他示例

另一个服务器管理员的示例使用父 / 子视图,请参阅库存跟踪 Windows SharePoint Services 3.0 的应用程序模板

网站管理员示例中,请参阅Windows SharePoint Services 3.0 的新店开张应用程序模板

使用工作流

Windows SharePoint Services 3.0承载到 Windows Workflow Foundation,以启用向应用程序添加工作流逻辑。Office SharePoint Designer 2007具有自定义和添加条件逻辑周围的框出的工作流的强大的基于规则的设计工具。您还可以创建更复杂和使用自定义工作流的代码使用 Visual Studio 2005 扩展名为 Windows Workflow Foundation Visual Studio 2005。在任何情况下,有一些注意事项何时以及如何使用工作流,,如下所示。

工作流使用注意事项

工作流都是很好的解决方案的异步操作。出借库解决方案,使用工作流时用户建议新的库资产。该工作流都是很好的选择的原因之一是不是同步之间的建议人姓名和审批者的过程。

工作流也适用于计划的事件。出借库解决方案,在工作流用于处理签出和截止日期资产的提醒。一旦项目签出,工作流自动发送截止日期提醒到期的项目时。

工作流可用作一种方法来简化; 否则在服务器上的复杂编程任务。考勤卡管理的 Windows SharePoint Services 3.0 的应用程序模板是一个示例。此应用程序特定任务的员工的工时的持续时间跟踪通过计算中穿孔之间的时差,并打卡下班时间戳。通常,跟踪的时间戳需要登录到服务器 (可能到数据库) – 这两种活动中显著开发投入。相反,此应用程序依赖于一个简单的工作流步骤。当用户冲孔时,工作流时间日志列表中创建一项,并将开始时间值设置为当前时间戳。同样,当用户冲孔,工作流将更新的相关联的行中相同的列表,并设置结束时间值。该用户的工期只需之间的区别是工作的结束时间和开始时间值,该值将反映在标记为小时的计算列中。

工作流异步执行。如果您正在创建位置导航到下一个页面之前必须完成的操作的结果的解决方案,工作流不可能的最佳解决方案。例如,在 bug 跟踪解决方案,工作流不用于处理 bug 激活和分辨率。此设计选项的原因之一是 bug 状态的更改需要用户对执行操作的 bug 后立即反映在用户界面。

使用Office SharePoint Designer 2007构建自定义工作流

创建工作流使用Office SharePoint Designer 2007是无代码的体验。打开一个网站,您将只需单击文件菜单,指向新建工作流,请单击,然后使用工作流设计器。工作流设计器可用于创建复杂的规则和操作和集成的 SharePoint 列表和库,以便您可以使用字段和直接从列表和库项目的值来推动工作流逻辑。

例如,假设您要创建将电子邮件发送给任务所有者,只要创建新任务或问题的工作流操作。在项目跟踪模板中,所有者是自定义列在 SharePoint 列表中,以便工作流可以使用此列的值,然后动态确定在运行时的实际的电子邮件地址。

若要了解有关Office SharePoint Designer 2007中的工作流的详细信息,请参阅简介 Microsoft Office SharePoint Designer 2007

此设计模式的其他示例

使用工作流的另一个服务器管理员示例,请参阅职位申请和面试管理的 Windows SharePoint Services 3.0 的应用程序模板

网站管理员示例中,请参阅临床试验启动和管理的 Windows SharePoint Services 3.0 的应用程序模板

使用仪表板

在 Web 部件的众多优点之间基础结构中Windows SharePoint Services 3.0是显示分散整个 SharePoint 网站或外部一个摘要页面中,名为仪表板中的信息的能力。在共享环境中的一个常见业务需求是基于角色的仪表板,它可以提供角色或人员的相关信息的视图。此类仪表板可利用功能强大的内置功能,例如筛选不 Web 部件和访问群体设定显示基于信息正在查看的页面。

此外可以深入这些功能,并创建单独的角色,单独的页面,以便可以完全自定义不只显示的信息,但也布局和其他方面的页面。基于角色的此类自定义的页面广泛通过应用程序模板和筛选和访问群体设定也可以当然,包括。

出借库应用程序,例如,使使用基于角色的用户与最相关的显示信息的仪表板的基于用户的角色。网站的主页具有可用的两页︰ 一个面向 (默认页) 中的库用户和管理员为一行。

同样,帮助桌面应用程序具有三个的仪表板视图可用的主页上︰ 服务代表主页、 知识管理员主页和服务代表管理员主页。用户选择与其角色最相关的超链接。仪表板中显示的 Web 部件视图也筛选以显示与用户相关的内容。这是对视图应用筛选器。下面的步骤说明如何这样的筛选器应用于现有列表视图。

  1. 导航到列表视图页面在浏览器中。

  2. 找到的控件下拉列表工具栏上,然后选择要修改,如果尚未选中视图的视图。

  3. 再次转到同一个下拉列表控件,然后选择修改此视图

  4. 在编辑视图页面中,向下滚动到筛选器部分。设置筛选值,如下所示︰

    等于[我],或当列客户等于[我]创建者时显示的项。

  5. 单击“确定”。

图 4 中显示的技术支持应用程序服务代表经理主页功能汇总服务请求的状态和优先级在表单中的条形图的两个仪表板 Web 部件。

仪表板页
图 4︰ 仪表板页面

这些是反映称为服务请求,也是帮助桌面解决方案网站的一部分的列表中包含数据的数据视图 Web 部件。若要更好地了解这些 Web 部件的创建方式,在Office SharePoint Designer 2007中打开该网站和加载 HelpDeskManager.aspx 包含这些 Web 部件页。拆分视图中查看的页面,您会看到代码隐藏 Web 部件是 XLST、 HTML 和 CSS 标记语言组合。

让我们检查在 Web 部件上的条形图条的创建方式。作为示例,我们将采取整体服务请求优先级 Web 部件。在Office SharePoint Designer 2007,在插入菜单上,单击SharePoint 控件,,然后单击数据视图以打开数据源库任务窗格。该任务窗格允许我们浏览当前可以访问的网站,包括列表已网站中的各种数据源。在我们大小写,我们将展开标记为SharePoint 列表部分,然后单击列表名称,服务请求,以指示此列表将为我们的数据源。在弹出的上下文菜单上,单击显示的数据。这将在任务窗格中称为数据源详细信息,其中显示所有字段和示例数据存储在服务请求列表中打开一个新的面板。我们从该面板中,选择所需的字段名称,我们希望在 Web 部件中显示 — 本例中,优先级域中,并选择作为单个项目视图插入所选字段(请参阅图 5)。

请注意,我们在本文中的目标是以显示所有任务按优先级分组汇总的计数。这意味着我们需要一次,列表优先级域中的可用选项,然后在列表中旁边显示的每个优先级值的计数。因此,我们选择优先级值显示为单个项目视图我们自定义的起始点。改为选择多个项目视图将公开列表中的所有行。

在 SharePoint Designer 中创建仪表板页
图 5︰ 在 Office SharePoint Designer 2007 中创建仪表板页面

这将在在光标点页面中插入数据视图 Web 部件。但是,只需 Web 部件以显示某一行的数据,并不按优先级汇总服务请求条形图。幸运的是,因为呈现 Web 部件时使用 HTML 和 XSL 代码,我们是免费的自定义的代码,以满足我们的需要。以下部分将突出显示一些此自定义,以将此 Web 部件转换为条形图的关键领域。

我们知道我们列表数据源有三个可能的优先级值: (1) 高、 (2) 普通、 和低 (3)。因此,我们 XLST 变量声明为每个值,如下所示︰ <xsl:variable name="High" select="count(/dsQueryResponse/Rows/Row[normalize-space(@Priority) = '(1) High'])" /> <xsl:variable name="Normal" select="count(/dsQueryResponse/Rows/Row[normalize-space(@Priority) = '(2) Normal'])" /> <xsl:variable name="Low" select="count(/dsQueryResponse/Rows/Row[normalize-space(@Priority) = '(3) Low'])" /> <xsl:variable name="AllTasks" select="count(/dsQueryResponse/Rows/Row)" />

注意 XSL 参数@Priority指的数据源字段的名称。由于代码以图形的三个优先级值的每个很相似,我们重点介绍制图只需第一个优先级值。若要获取百分比值,我们定义新变量, percetHigh,来计算百分比的值的高优先级请求︰ <xsl:variable name="percentHigh" select="$High div $AllTasks" />

创建实际的栏的代码是 XSL 模板,如下所示︰ <xsl:template name="ChartRow"> <xsl:param name="RowName"></xsl:param> <xsl:param name="Value"></xsl:param> <xsl:param name="PercentValue"></xsl:param> <tr> <td class="ms-formbody" width="125px" style="vertical-align:middle"> <xsl:value-of select="$RowName"/>: <xsl:value-of select="$Value" /> <xsl:text xmlns:ddwrt="http://schemas.microsoft.com/WebParts/v2/DataView/runtime" ddwrt:nbsp-preserve="yes" disable-output-escaping="yes"> &amp;nbsp; </xsl:text>( <xsl:call-template name="percentformat"> <xsl:with-param name="percent" select="$PercentValue"/> </xsl:call-template>) </td> <td> <table width="100%" > <tr> <td width="{round($PercentValue*100)+1}%" height="15px" class="ms-selected"><xsl:text xmlns:ddwrt="http://schemas.microsoft.com/WebParts/v2/DataView/runtime" ddwrt:nbsp-preserve="yes" disable-output-escaping="yes">&amp;nbsp;</xsl:text> </td> <td width="100%" > <xsl:text xmlns:ddwrt="http://schemas.microsoft.com/WebParts/v2/DataView/runtime" ddwrt:nbsp-preserve="yes" disable-output-escaping="yes">&amp;nbsp;</xsl:text> </td> </tr> </table> </td> </tr> </xsl:template>

请注意,栏本身是带有两个单元格的表格。宽度的第一个单元格,表示该图表中的栏的宽度,由PercentValue变量中,为代码中表示︰ td width="{round($PercentValue*100)+1}%"

此单元格也具有 ms 所选的 CSS 样式类对其应用。此样式类定义 core.css 样式表中,如下所示︰ .ms-selected { background-position:left top; color:#000000; background-image:url("/_layouts/images/filedialogselected.gif"); background-color:#FFE499; border-top:1px solid #FFE499; border-bottom:1px solid #FFE499; background-repeat:repeat-x; }

背景图像、 filedialogselected.gif,什么是单元格 (即栏) 显示黄色。

此设计模式的其他示例

使用仪表板的另一个服务器管理员示例,请参阅呼叫中心 for Windows SharePoint Services 3.0 的应用程序模板

网站管理员示例中,请参阅业务绩效报告 Windows SharePoint Services 3.0 的应用程序模板

返回页首

构建模板

应用程序模板Windows SharePoint Services中的有两种类型︰ 定义网站和网站模板。四十应用程序模板,这两种混合。两种类型的模板可供用户可以从新建 SharePoint 网站页面上选择并两项功能向最终用户非常相似。但是,创建这些模板,并使其可供使用的网站创建窗体中的方法是非常不同。

网站定义

在最基本有意义,网站定义是 XML 文件、 组件和听写基于该网站的结构如何以及基础应用程序的网站中将执行哪些操作的.aspx 页面的集合。由于的基本 XML 文件和.aspx 文件是通过文件系统访问,它们可以克隆并修改轻松地重新创建新网站定义,使网站定义高度自定义。

网站配置网站定义出 (创建) 后,在文件系统中为网站定义文件所做的更改可仍传播到配置的网站。但是,更改网站定义文件后设置网站不支持由 Microsoft。如果已设置网站中的任何的页面修改使用外部编辑器,如Office SharePoint Designer 2007,页面将失去文件系统中与网站定义的连接。相反,页面保存Windows SharePoint Services数据库系统,并称为"自定义"或"取消幻像"页面。

如果需要您可以自定义现有网站定义您的方法是启动与重命名网站定义,而不是修改现有的副本。若要实现对现有网站定义更改,网站已配置的窗体后,您需要创建和部署网站定义升级的解决方案包。有关如何执行此操作的详细信息,请参阅Windows SharePoint Services 3.0 SDK中的相应文章。

网站模板

网站模板是打包成单个文件可解压缩对类似的结构和内容创建新网站的 SharePoint 网站。这意味着,才能创建网站模板,我们都需要有现有的 SharePoint 网站作为起始点。可以在模板中捕获任何网站自定义页面布局、 样式表、 图像、 母版页、 文档、 列表、 列表内容-。

从网站的管理任务 (在网站设置) 下的向右或Office SharePoint Designer 2007,将发生捕获到模板的现有网站的过程。创建后,该网站模板存储在当前的网站集的网站模板库中。文件扩展名.stp。可以从网站模板库下载此文件,并将其迁移到另一个网站集或不同服务器环境。此部分的后半部分深入创建和使用网站模板的详细信息。

使用网站模板与网站定义

我们只需讨论,实际上来自网站定义网站模板。在决定之间创建新的网站定义或网站模板时,考虑以下事项︰

  • 应用程序复杂性   如果您需要大部分表面,如更改布局和图像到现有网站的操作,网站模板不转的方法。另一方面,如果您想要添加新的 Web 部件定义或想要使用自定义代码或计算字段,则应创建自定义网站定义。

  • 您的服务器的访问级别   您是否有权访问整个 Web 服务器?或者,只对特定网站集?创建和部署网站定义需要访问服务器的文件系统。如果您没有此访问权限,您是局限于在有权访问的网站集级别创建网站模板。请切记,此 access 要求不适用于网站管理员 — 部署后,任何一个与权限才能创建新的网站将有权访问任何类型的应用程序模板。

  • 每个更改将来更新的频率   更改网站模板不会影响已从其创建的网站-创建之后所做的更改会影响仅较新的网站。部署网站定义升级的解决方案包影响已从其创建的所有网站。

创建网站模板和网站定义指南

创建网站模板和网站定义涉及不同数量的复杂程度越高。以下各节中介绍了基本方法。

创建网站模板

如前文所述,网站模板都是实际打包以重复使用的 SharePoint 网站。在网站集级别的网站模板库中存在此打包的文件。在库中的网站模板可用于在所有网站集的子网站级别创建新网站。以下步骤将引导您在从现有网站中创建新的网站模板︰

  1. 在Office SharePoint Designer 2007中打开现有网站,并确保的布局和网站中的内容所需。

  2. 文件菜单上,指向导出,,然后单击SharePoint 网站模板。这样将转到网站的设置网页。

  3. 输入文件的名称、 标题和模板说明。

  4. 如果您希望列表和文档库包含在模板中的数据,或者,选择包含内容选项。如果您想要包括工作流,因为工作流实际上存储在文档库中的内容,您还应选择此选项。

  5. 单击确定。这创建.stp 扩展名注销网站模板文件,并将文件放在父网站的网站模板库中。

从网站模板库,您可以单击模板名称以本地.stp 文件下载到磁盘。从这里,您可以将文件上载到另一个网站模板库。

创建网站定义

网站模板与网站定义存储文件系统中。每个网站定义位于自己在服务器上的文件夹︰

% CommonProgramFiles %\Microsoft Shared\Web server extensions\12\TEMPLATE\ SiteTemplates

网站模板文件夹托管各种网站元素,如.aspx 和.html 文件和关联的资源,例如图像和 JavaScript 文件。ONET。XML 是指定的各种配置和网站定义的模块的核心网站定义文件。ONET。XML 存储在一个名为"XML"子目录中。

网站定义与Windows SharePoint Services注册,并可通过 WEBTEMP XML 文件。在位于所有 WEBTEMP XML 文件

% CommonProgramFiles %\ \Microsoft Shared\Web 服务器 extensions\12\TEMPLATE\ < LCID > \XML

其中 < LCID > 是如 1033年位置 ID。XML 文件的实际名称前面带"WEBTEMP"(例如,WEBTEMPBT。XML)。

基本上,创建新的网站定义包括两个主要步骤: (1) 设置网站定义文件夹,并 (2) 创建将用Windows SharePoint Services注册网站定义 WEBTEMP XML 文件。可以通过复制现有网站定义文件夹,并更改其内容以满足业务需求的第一步。ONET。XML 文件包含指定设置的网站页面的各个部分,如导航栏、 文档模板和列表模板的元素。配置元素指定的列表和网站定义实例化时默认情况下创建的模块。下面的摘录是从 ONET。XML 的 Bug 跟踪网站定义,并显示该配置元素的一部分︰ <Configurations> <Configuration ID="0" Name="Default"> <SiteFeatures> <!-- BasicWebParts Feature --> <Feature ID="00BFEA71-1C5E-4A24-B310-BA51C3EB7A57" /> <!-- Three-state Workflow Feature --> <Feature ID="FDE5D850-671E-4143-950A-87B473922DC7" /> <!-- TSA Fields and Content Types --> <Feature ID="75A0FEA7-CD50-401e-AF0E-782F3662A299" /> </SiteFeatures> <WebFeatures> <!-- TeamCollab Feature --> <Feature ID="00BFEA71-4EA5-48D4-A4AD-7EA5C011ABE5" /> <!-- MobilityRedirect --> <Feature ID="F41CC668-37E5-4743-B4A8-74D1DB3FD8A4" /> <!-- Bug Tracking Categories List --> <Feature ID="75A0FEA7-42E8-4527-8313-F63C4C49A7E6" /> <!-- Bug Tracking Bugs List --> <Feature ID="75A0FEA7-2D1E-451a-B445-16BC346D7D8E" /> <!-- Bug Tracking Bugs List Instance --> <Feature ID="75A0FEA7-2D1E-451a-B445-16BC346D7D8F" /> ... ... <!-- Post Provisioning Event Handler --> <Feature ID="75A0FEA7-B0EF-434e-90D6-CE997D970564"> <Properties> <Property Key="ZonedWebPartsUrlList" Value="$Resources:core,lists_Folder;/Bugs/Resolve.aspx,$Resources:core,lists_Folder;/Bugs/Activate.aspx,$Resources:core,lists_Folder;/Bugs/Close.aspx"/> </Properties> </Feature> </WebFeatures> </Configuration> </Configurations>

注意此网站定义使用大量的功能,例如 Bug 列表、 Bug 类别列表、 重定向移动性等。具有功能 Guid SiteFeaturesWebFeatures元素下列出等功能。在此文件夹中的相应 Feature.XML 文件中的功能元素中找到 Guid:

% CommonProgramFiles %\Microsoft Shared\Web server extensions\12\TEMPLATE\FEATURES

请参阅Windows SharePoint Services 3.0 SDK ONET 自定义的更多详细信息。XML。

创建自定义网站定义的第二步是创建的文件 WEBTEMP *。此文件夹中的 XML 文件︰

% CommonProgramFiles %\Microsoft Shared\Web server extensions\12\TEMPLATE\ < LCID > \XML

此文件的模板元素指定可用于实例化从网站定义创建的网站的配置。下面的摘录说明了 WEBTEMPbt.XML 文件,这是由 Bug 跟踪网站定义的配置文件的格式︰ <?xml version="1.0" encoding="utf-8" ?> <Templates xmlns:ows="Microsoft SharePoint"> <Template Name="BT" ID="75801"> <Configuration ID="0" Title="Bug Database" Hidden="FALSE" ImageUrl="/_layouts/images/stsprev.png" Description="A site for teams to track bugs in their shared software projects." DisplayCategory="Application Templates" > </Configuration> </Template> </Templates>

请注意,上面的模板节点名称属性必须匹配"*"的文件名,WEBTEMP *。XML。 另外请注意配置元素的DisplayCategory属性规定配置将显示在创建网站网页上的模板选择部分中的选项卡。您可以通过将您自己的值放在该属性来创建您自己的选项卡。

一旦已创建了网站定义文件和文件系统中放入相应的文件夹,请重新启动 IIS 服务。将可以在Windows SharePoint Services中的新建 SharePoint 网站页面的模板选择部分中选择新的网站定义。此外可以为轻松迁移到另一个 SharePoint 环境或重新相同的环境中部署解决方案文件打包网站定义文件。解决方案文件是压缩文件。WSP 扩展名 (Web 解决方案包)。它包含 Web 部件的功能集,类使用的网站定义可资源等。您可以使用 makecab.exe 工具创建。WSP 文件。请参阅Windows SharePoint Services 3.0 SDK如何创建解决方案文件。

本地化网站定义

通过使用资源文件和区域性检测方便了网站定义的本地化。典型的 ASP.NET 2.0 应用程序本地化编译过程完成后,同时网站资源调配期间完成 SharePoint 网站本地化。在应用程序模板,所有 20 网站定义模板已本地化 10 种语言。存储在资源文件 (.resx) 中的字符串时以特定语言的方式创建自己的网站定义。如果您想要将本地化添加到您自己的网站定义,或者向现有网站定义中添加新语言的支持,您可以执行此操作通过创建新的资源文件。文件都位于资源目录中︰

% CommonProgramFiles %\Microsoft Shared\Web server extensions\12\Resources

此文件是实际上是 XML 文件,在任何文本编辑器中编辑。下面的步骤演示如何创建网站定义中使用新的本地化文件︰

  1. 浏览到上面提到的资源目录,然后找到要为新语言的本地化现有.resx 文件。

  2. 复制文件,并为其指定相同的名称,除语言区域性名称 (示例 tsa-en-us.resx 到 tsa-es es.resx)。

  3. 在文本编辑器中打开克隆的文件。

  4. 第二行的文件,以表示语言设置 lcid 代码。例如,下面的代码将设置为西班牙语的语言︰

<!-- _lcid="3082" _version="12.0.5006.3000" _dal="1" ––>

  1. 向下滚动到您在其中查看数据元素后面跟有一对元素的一部分。这是配对本地化的字符串值的资源名称的位置。修改您的区域设置的元素中的字符串值。下面的代码示例显示西班牙语创建新客户的操作的资源字符串︰

    <data name="Action_NewCustomer">
    <value>Crear un Nuevo cliente</value>
    </data>
  2. 将文件保存到资源文件夹的名称,如myCustomResource.es-es.resx (的实际名称取决于资源文件所针对的语言区域性名称)。此文件已准备好在您的应用程序的网站定义文件被引用。

为了让本地化的网站定义以显示为该语言的新建 SharePoint 网站页面上的可用模板,添加到相应的 < LCID > 目录的 WEBTEMP 文件。如何添加新的 WEBTEMP 文件,请参阅上一节"创建网站定义"。

本地化的资源引用工作方式不同.aspx 文件中表现 XML 文件。例如,.aspx 文件中的引用会进行求值在运行时,网站实例化时的 XML 文件引用会进行求值时。若要访问网站定义文件中的资源文件中的 XML 元素,请使用以下语法︰ $Resources: myCustomResource,DataName。例如,要使用的资源字符串.aspx 文件中,标记可能如下所示︰ <div> <asp:Label runat="server" Text="<%Resources:myCustomResource, Action_NewCustomer %>" /> </div>

返回页首

摘要

在一起, Windows SharePoint Services 3.0和Office SharePoint Designer 2007提供了功能强大的工具,您需要构建和自定义交互式、 启用工作流的应用程序。是否自定义四十可下载的应用程序模板之一或构建您自己,本文将介绍经过验证的方法和最佳做法,即使非开发人员可以使用成功。

如果尚未执行此操作,以使下一步是下载应用程序模板,并开始使用它们,并在Office SharePoint Designer 2007中打开它们。为了帮助您构建自己的应用程序,然后使用下面的"资源"部分中的资源。

返回页首

资源

Windows SharePoint Services 3.0和Office SharePoint Designer 2007的详细信息,请参阅以下资源︰

有关更多专注于开发人员的资源,请参阅下列︰

返回页首

注意: 机器翻译免责声明:本文是由无人工介入的计算机系统翻译的。Microsoft 提供机器翻译是为了帮助非英语国家/地区用户方便阅读有关 Microsoft 产品、服务和技术的内容。由于机器翻译的原因,本文可能包含词汇、语法或文法方面的错误。

扩展你的技能
了解培训
抢先获得新功能
加入 Office 预览体验计划

此信息是否有帮助?

谢谢您的反馈!

谢谢你的反馈! 可能需要转接到 Office 支持专员。

×