模式帮助:将对象从 DAL 传递到合同。两个类,一个接口

Pattern Help: Passing Object from DAL to Contract. Two Classes, One Interface

我的解决方案中有许多项目代表应用程序的不同层。数据访问层 (DAL) 中有一个数据库模型,更重要的是——对于我的问题——一个普通的旧 Class 对象 (POCO)。我想通过 WCF 合同将此 POCO 的实例发送给外部请求者。如您所知,我必须在合约层定义操作合约和数据合约。这就是我的问题所在,当POCO位于另一层时,如何声明数据契约及其数据成员?

我已经尝试定义一个接口并让两者 类 实现它,但是当我从数据库中获取对象然后通过合同传递它们时我遇到了一个问题,合同没有知道传递给它的对象 - 即使它共享一个接口。

无论如何,希望这是清楚的(像泥巴一样!),如果有人能就合适的解决方案向我提出建议,我将不胜感激。

P.S。在 VS2015 中使用 C#

在我看来,您需要的是另一个专门为 WCF 层构建的 class,它包含您需要使用的所有属性和属性,然后使用 AutoMapper 之类的内容复制到内容到您的 WCF 对象。

利用 Factory Design Pattern 也可以帮上忙。