用于定义应用程序的应用程序类型和原型

更新:2007 年 11 月

在应用程序设计器中,工具箱中包含可用来定义应用程序的预定义应用程序原型。应用程序原型定义特定应用程序类型的预配置应用。例如,要定义公开 Web 服务的 ASP.NET 应用程序,可以首先将“ASP.NETWebService”原型从工具箱拖到应用程序关系图上。此操作创建一个具有默认 .NET Web 服务提供方终结点的 ASP.NET 应用程序。对于支持实现的应用程序类型,Visual Studio 会在您实现它们时生成适当的项目,以便您可以继续用代码定义这些应用程序。还可以基于已经在应用程序关系图上配置的应用程序和终结点来创建自定义原型,也可以扩展可使用的应用程序类型和原型的集合,方法是安装由 Microsoft 或第三方提供的包,或者使用系统定义模型 (SDM) 软件开发工具包 (SDK) 来创建它们。

以下各节包含有关应用程序原型的更多信息:

  • 应用程序的类型和原型

  • 定义 ASP.NET 应用程序

  • 定义 Windows 和 Office 应用程序

  • 表示外部应用程序

  • 表示不受支持的或非特定的应用程序类型

  • 创建自定义原型并将它们添加到工具箱中

  • 添加和扩展应用程序类型

应用程序的类型和原型

下表概述和描述了应用程序设计器中可用的应用程序类型、这些应用程序类型所支持的终结点类型、实现支持(如果有的话)以及所生成的项目的类型。通过使用 SDM SDK 或者安装第三方包,还可以支持其他应用程序类型以及这些应用程序类型上的终结点类型。有关更多信息,请参见创建自定义原型并将它们添加到工具箱中和添加和扩展应用程序类型。

应用程序类型

说明

支持的终结点类型

是否支持实现?

项目类型

ASP.NET Web 应用程序

定义 ASP.NET 应用程序。

  • Web 服务提供方和使用方终结点。

  • Web 内容提供方和使用方终结点。

  • 数据库使用方终结点。

  • 一般提供方和使用方终结点。

是。此应用程序上的 Web 服务和数据库使用方终结点也支持实现。

ASP.NET 网站

外部数据库

表示数据库。

  • 数据库提供方终结点(此终结点只有一个,并且是强制性的)和使用方终结点。

  • 一般提供方和使用方终结点。

  • Web 服务使用方终结点。

  • Web 内容使用方终结点。

不适用

外部 BizTalk Web 服务

表示一个称为 BizTalk Web 服务的外部 Web 服务。

  • Web 服务提供方终结点(此终结点只有一个,并且是强制性的)和使用方终结点。

  • 一般提供方和使用方终结点。

  • 数据库使用方终结点。

  • Web 内容使用方终结点。

不适用

外部 Web 服务

表示一个外部 Web 服务,该服务通过具有单个 WSDL 绑定的 Web 服务描述语言 (WSDL) 文件定义,并且具有一个默认的 Web 服务提供方终结点。

  • Web 服务提供方终结点(此终结点只有一个,并且是强制性的)和使用方终结点。

  • 一般提供方和使用方终结点。

  • 数据库使用方终结点。

  • Web 内容使用方终结点。

不适用

一般应用程序

表示不受支持或未指定的应用程序。仅出于记录目的而存在。

  • 一般提供方和使用方终结点。

  • 数据库使用方终结点。

  • Web 服务使用方终结点。

  • Web 内容使用方终结点。

不适用

Office 应用程序

定义一个 Microsoft Office 应用程序并支持 Excel、Outlook 和 Word 模板。

  • 一般提供方和使用方终结点。

  • 数据库使用方终结点。

  • Web 服务使用方终结点。

  • Web 内容使用方终结点。

是。此应用程序上的 Web 服务和数据库使用方终结点也支持实现。

Office

Windows 应用程序

定义一个 Microsoft Windows 应用程序并支持控制台应用程序、Windows 应用程序和 Windows 服务模板。

  • 一般提供方和使用方终结点。

  • 数据库使用方终结点。

  • Web 服务使用方终结点。

  • Web 内容使用方终结点。

是。此应用程序上的 Web 服务终结点和数据库使用方终结点也支持实现。

Windows

下表概述工具箱中可用的预定义应用程序原型、创建的应用程序类型、这些原型上的默认终结点以及默认的项目模板和语言。还可以通过以下方法来添加原型:从已经在应用程序关系图上配置的应用程序创建原型、安装由 SDM SDK 生成的必要原型文件或者安装定义新应用程序类型的第三方包。有关更多信息,请参见创建自定义原型并将它们添加到工具箱中和添加和扩展应用程序类型。

应用程序原型

创建的应用程序类型

默认终结点

默认项目模板

默认语言

ASP.NETWebApplication

ASP.NET Web 应用程序

Web 内容提供方终结点

ASP.NET 网站

Visual Basic

ASP.NETWebService

ASP.NET Web 应用程序

.NET Web 服务提供方终结点

空网站

Visual Basic

ExternalDatabase

外部数据库

数据库提供方终结点

不适用

不适用

BizTalkWebService

外部 BizTalk Web 服务

Web 服务提供方终结点

不适用

不适用

ExternalWebService

外部 Web 服务

Web 服务提供方终结点

不适用

不适用

GenericApplication

一般应用程序

不适用

不适用

OfficeApplication

Office 应用程序

Excel 工作簿

Visual Basic

WindowsApplication

Windows 应用程序

Windows 应用程序

Visual Basic

有关更多信息,请参见下列主题:

定义 ASP.NET 应用程序

通过使用“ASP.NETWebApplication”或“ASP.NETWebService”原型,可以分别向应用程序关系图中添加公开 Web 内容或/和基于 .asmx 文件的 Web 服务的 ASP.NET 应用程序。这两个原型均创建 ASP.NET Web 应用程序。但是,“ASP.NETWebService”原型会创建一个具有默认 .NET Web 服务提供方终结点的应用程序,而“ASP.NET WebApplication”原型则会创建一个具有默认 Web 内容提供方终结点的应用程序。创建 ASP.NET Web 应用程序之后,无论最初使用的是哪个原型,都可以向该应用程序中添加 Web 服务或 Web 内容终结点。还可以为 ASP.NET Web 应用程序上的每个 Web 服务提供方终结点定义操作。操作与基础 Web 服务类中的 Web 方法对应。ASP.NET Web 应用程序支持在解决方案中实现。有关更多信息,请参见应用程序关系图上的 ASP.NET 应用程序概述

支持 ASP.NET Development Server Web 项目

分布式系统设计器支持运行于 ASP.NET Development Server 以及 Internet 信息服务 (IIS) 上的 ASP.NET 应用程序。默认情况下,ASP.NET 应用程序是基于文件系统的 ASP.NET Development Server Web 项目,而不是基于 HTTP 的 IIS Web 项目。

说明:

对于签入源代码管理中的解决方案,如果 ASP.NET 应用程序实现为基于文件系统的应用程序而且连接到已实现的使用者应用程序,则签出应用程序关系图时会向该应用程序上的 Web 服务分配新端口。此操作需要更新与这些使用者应用程序关联的 Web 服务引用,并且需要签出关联的使用者应用程序项目。但是,可以通过指定这些项目不使用动态端口来避免这种情况。

以后可以将实现为 ASP.NET Development Server Web 项目的 ASP.NET Web 应用程序迁移到 IIS,而不会丢失任何数据。但是,当与 ASP.NET Development Server 一起使用时存在一些限制。有关更多信息,请参见下列主题:

支持 Web Services Enhancements (WSE)

对于用分布式系统设计器构建的应用程序,可以使用多个版本的 WSE 3.0。但是,分布式系统设计器不提供与 WSE 3.0 或更早版本的集成。例如,不能在设置和约束编辑器中编辑 WSE 的设置和约束,也不能使用设置和约束编辑器来编辑应用程序配置文件中有关 WSE 配置和策略的节。有关更多信息,请访问位于 https://go.microsoft.com/fwlink/?LinkID=45743 上的 MSDN Online 中的 Web Services Enhancements 页。

定义 Windows 和 Office 应用程序

可以分别通过使用“WindowsApplication”和“OfficeApplication”原型来定义 Microsoft Windows 和 Office 应用程序。Windows 和 Office 应用程序支持在解决方案中实现。所有的 Windows 和 Office 项目都包括一个 App.config 配置文件。

有关更多信息,请参见下列主题:

表示外部应用程序

可以表示这样的应用程序:这些应用程序由其他应用程序引用,但是未在您的解决方案中实现,也不打算作为基于解决方案中的应用程序设计和组成的任何应用程序系统的一部分来部署。尽管这些应用程序由于在技术上处于实现和部署上下文中系统的外部,而被称作“外部”,但您仍然可以将它们作为系统设计的一部分包括进来。通过在系统中包括外部应用程序,可以在定义和验证系统的部署时,验证以这些应用程序为起点和终点的通信路径。在最终部署该系统时,对外部应用程序的引用必须用这些应用程序的实际部署位置来解析。

可以表示为“外部”的应用程序包括如下项:

  • 外部 Web 服务。

  • BizTalk Web 服务。

  • 数据库

    说明:

    尽管数据库表示为“外部”而且不支持实现,但这并不要求或表示数据库不能随使用它们的系统一起部署。

以下各节包含有关这些外部应用程序的更多信息。

  • 表示外部 Web 服务和 BizTalk Web 服务

  • 表示数据库

表示外部 Web 服务和 BizTalk Web 服务

通过使用“ExternalWebService”和“BizTalkWebService”原型,可以向应用程序关系图中添加外部 Web 服务和 BizTalk Web 服务。在分布式系统设计器中,外部 Web 服务和 BizTalk Web 服务的创建和行为是相同的。使用 BizTalk Web 服务应用程序类型,可以记录所引用的 Web 服务,该服务是已知能够提供对 BizTalk 应用程序的访问的。另外,基础结构设计师可以使用逻辑数据中心设计器来定义应用程序承载约束,这些约束有选择地允许或禁止在特定逻辑服务器上承载外部 Web 服务和 BizTalk Web 服务。

说明:

尽管 BizTalk Web 服务与外部 Web 服务的定义过程相同,但是请确保所引用的 Web 服务确实是 BizTalk Web 服务。

向应用程序关系图中添加 BizTalk Web 服务或外部 Web 服务时,必须指定描述该 Web 服务的 WSDL 文件的位置。将外部 Web 服务或 BizTalk Web 服务添加到关系图中之后,可以查看它的 Web 服务操作;但是,您不能编辑这些操作。

有关更多信息,请参见下列主题:

表示数据库

通过使用“ExternalDatabase”原型,可以向应用程序关系图中添加数据库。通过向应用程序关系图中添加外部数据库,可以记录某个数据库是否存在,对指向该数据库的连接进行可视化处理,而且最重要的是,还可以在所连接的应用程序上创建数据库使用方终结点。然后,可以为每个数据库使用方终结点配置一个数据库连接字符串,以便在使用者应用程序的配置文件中创建适当的项,该数据库连接字符串是在使用者应用程序实现之后生成的。有关更多信息,请参见 如何:配置到外部数据库的连接

说明:

使用外部数据库可以记录对数据库的引用。连接到同一个数据库的数据库使用方终结点的数据库连接字符串不必相同或指定同一个物理数据库,尽管最佳做法是确保满足此要求。

表示不受支持的或非特定的应用程序类型

通过使用“GenericApplication”原型,可以向应用程序关系图中添加不受支持的或非特定的应用程序类型。可以将一般应用程序连接到其他应用程序,指定用户定义的或自定义的设置,添加一般终结点以及其他受支持的使用方终结点类型。定义部署时,可以在系统定义中包括一般应用程序并将它们绑定到一般逻辑服务器。通过添加一般终结点,可以记录那些使用不受支持的通信协议的应用程序之间的通信。

一般应用程序不支持下列操作:

  • 实现或与项目关联。

  • 与项目同步。

  • 配置或验证应用程序和终结点约束。

有关更多信息,请参见下列主题:

创建自定义原型并将它们添加到工具箱中

使用自定义原型,可以通过已经在应用程序关系图上配置的应用程序和终结点来定义应用程序和终结点。自定义原型包括当您使用应用程序和终结点创建自定义原型时存在于这些应用程序和终结点上的所有属性、配置和设置。

可以基于单个或多个应用程序或终结点来创建自定义原型。创建自定义原型时,它们会添加到工具箱中。您还可以与其他用户共享自定义原型。有关更多信息,请参见如何:根据已配置的应用程序和终结点创建自定义原型

添加和扩展应用程序类型

可以扩展用来定义应用程序的应用程序类型和原型的集合,方法是安装由 Microsoft 或第三方所提供的包,或者使用系统定义模型 (SDM) 软件开发工具包 (SDK) 来创建它们。每个新的应用程序类型都将包括一个或多个添加到工具箱中的原型。有关更多信息,请参见 SDM SDK 文档。

说明:

新的应用程序类型必须总是提前安装和加载,而新的应用程序原型既可以提前安装和加载,也可以直接从应用程序关系图上的应用程序创建。SDM SDK 创建的原型不支持代码生成或同步。但是,此功能是扩展性功能,它可以通过使用外接程序和 Visual Studio 包来添加,这些外接程序和包是通过使用 Visual Studio SDK 和 Visual Studio 自定义项目模板来创建的。有关更多信息,请参见 Visual Studio SDK 文档和 为应用程序关系图上的应用程序分配项目模板

请参见

任务

演练:在应用程序关系图上定义应用程序

概念

应用程序设计器概述

其他资源

在应用程序关系图中定义应用程序