我想创建一个WCF服务,什么是最好的设计模式呢?例如像这样分成三个独立的项目: 1) 数据协定(DataContract) 2) 业务逻辑(BusinessLogic) 3) SvcHostProject
这听起来还不错,尽管我可能会将DataContract和SvcHostProject合并,因为它们都必须引用WCF二进制文件,而且似乎共享相同的粗粒度职责(也就是说,除非您考虑创建通用的ServiceHost)。您可能想看看有关使WCF服务更易于测试的(旧)帖子:http://blogs.msdn.com/b/ploeh/archive/2008/07/12/an-overview-of-unit-testing-duplex-wcf-services-and-clients.aspx 尽管它谈论的是双工服务,但您可以轻松推断如何处理更“正常”的请求-响应服务。
这篇文章对我帮助很大:http://www.netfxharmonics.com/2008/11/Architectural-Overview-Creating-Streamlined-Simplified-yet-Scalable-WCF-Connectivity。