实战:实现 WCF 服务
1. 引言
在之前,我们创建了一个基础的 WCF 服务 HelloWorldService,它只有一个名为 GetMessage 的方法,且该服务仅在一层中实现,服务接口和实现都在一个可部署组件内。现在,我们要实现一个名为 RealNorthwindService 的 WCF 服务,以反映真实世界的解决方案。本章将把服务接口层与业务逻辑层分离,后续还会为服务添加数据访问层。
2. 创建与测试 WCF 服务的步骤
创建和测试 WCF 服务可按以下步骤进行:
1. 使用 WCF 服务库模板创建项目
2. 使用 WCF 服务应用程序模板创建项目
3. 创建服务操作契约
4. 创建数据契约
5. 添加产品实体项目
6. 添加业务逻辑层项目
7. 从服务接口层调用业务逻辑层
8. 测试服务
3. 服务分层的原因
在 SOA 设计中,服务边界应明确,即隐藏服务边界背后实现的所有细节,包括使用的特定技术。此外,在服务实现内部,负责数据操作的代码应与负责业务逻辑的代码分离。因此,在现实世界中,将 WCF 服务实现为三层或更多层是一个很好的实践。这三层分别是服务接口层、业务逻辑层和数据访问层,具体信息如下表所示:
| 分层名称 | 功能描述 |
| ---- | ---- |
| 服务接口层 | 包含服务契约和操作契约,用于定义将在服务边界公开的服务接口;还定义数据契约,用于传入和传出服务;若服务外部可能抛出异常,也会在该层定义错误契约 |
| 业务逻辑层 | 将实际业务逻辑应用于服务操作,检查每个操作的前
超级会员免费看
订阅专栏 解锁全文
20

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



