【发布时间】:2011-08-24 14:02:20
【问题描述】:
我有四个项目:
1. 定义我项目的业务登录的业务项目。
2. 定义合约接口和DTO的服务合约项目。
3. 定义服务实现的服务实现项目。
4. 带有使用该服务的 svc 文件的 Web 应用程序。
理论上:
A. 合同项目不得参考任何人。
B. 服务实现应参考合同项目和领域。
C. Web 应用程序应仅引用合同和实施项目。
我有这样的服务:
AccoundData GetAccount(AccountTypeEnum type);
问题是在域中定义了AccountTypeEnum,因此合同和Web应用程序应该引用域..但这是我们试图阻止的..那么我该如何防止合同“了解”域?
【问题讨论】:
-
WCF 合约的方法在您的域对象上运行 - 它怎么会不知道域?!?!!?
-
@marc_s:合约只是一个接口而不是实现。来自域的结果存储在数据传输对象中。因此,合约为什么要知道域?如果它知道,你强迫我们的项目也知道这个领域。