当前位置:  开发笔记 > 编程语言 > 正文

WCF:每个业务实体的单独服务

如何解决《WCF:每个业务实体的单独服务》经验,为你挑选了1个好方法。

例如,您有客户,订单和产品.您是否为每个这些业务实体创建单独的服务?

你应该为每一个创建一个服务合同,这是合乎逻辑的.但是,由于您必须明确指定您的服务将实现的合同...这种强制您为每个服务合同创建单独的服务,不是吗?

你能告诉我你将如何处理这件事吗?不知何故,为任何商业实体提供服务都感到笨拙... :-(

提前,非常感谢和问候.



1> blowdart..:

服务对业务实体起作用,但不是业务实体.

因此,客户,订单和产品将是数据合同,而不是服务合同.

这是您对构成服务合同的数据合同执行的操作,您在实体上公开的操作可能与实体无关,也可能不是实体可以执行的所有操作.

如果我认为您可能会问,每个实体都有共同的功能(例如CRUD操作),那么您应该在每个实体(CustomerCRUDService,OrderCRUDService等)上为CRUD服务建立单独的服务联系人,因为Web服务不是t支持方法签名的重载.

(来自评论)

有几种方法.

1)复合服务合同:例如,我有一个实现WSTransfer的服务 - 它实际上由两个服务契约IWSTransferResource和IWSTransferFactory组成.反过来,我有一个IWSTransfer服务合同,它只是实现那些单独的合同 - 公共接口IWSTransfer:IWSTransferResource,IWSTransferFactory

2)但是你甚至不必复杂,WCF中的实现可以实现多个服务契约 - MyServiceImpl:IMyContract1,IMyContract2.但是,每个合同都需要一个单独的端点,因为端点用于服务合同,而不是实现类.

推荐阅读
mobiledu2402852357
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有