基于.NET的服务导向架构:服务契约、规范模式与数据转换
在服务导向架构中,提升供应商多元化选项和增强联合战略目标背后的成功因素,与服务契约的设计、开发和架构定位密切相关。这些因素对于实现提升内在互操作性的目标至关重要,而这一目标正是服务导向所倡导的整体目标和长期目标状态的核心。
1. 标准化服务契约
标准化服务契约原则主张在给定的服务清单边界内对服务契约进行标准化。这里的标准化既可以指使用行业标准(如WSDL和XML Schema),但主要侧重于预定义和规范的自定义设计标准(如规范数据模型)。
为确保契约始终标准化,通常采用契约优先的方法。以下是使用.NET进行契约优先开发的常见三步流程:
1. 创建或重用数据契约 :WCF数据契约通常以XML模式的形式存在,用于定义服务能力交换的一组数据的数据结构和数据类型。可遵循规范模式和模式集中化等模式,创建新的数据契约供一个或多个服务使用,或重用现有的标准化数据契约。
2. 创建消息契约 :服务能力传输或接收的消息的主体内容主要由数据契约预先定义。消息契约包含数据契约,并根据消息元数据进一步定义消息头中的元数据。WCF中的消息契约主要使用SOAP主体和头构造构建,此步骤还可能包括为异常条件预定义错误契约。
3. 创建接口契约 :接口契约通常等同于WSDL文档的抽象描述,其中定义了操作契约。对于REST服务,接口契约可视为给定服务的统一契约中支持的HTTP方法的子集。接口契约及其操作或方法表达了服务提供的外部可调用功能,它将数据和消息契约组合在一起,并将它们与适当的操作或方法关联起来。
超级会员免费看
订阅专栏 解锁全文
44

被折叠的 条评论
为什么被折叠?



