【发布时间】:2011-01-28 00:19:54
【问题描述】:
目前我正在创建一个 WCF 服务,它必须连接到一个 DAL,它只使用 ADO.net 和存储过程连接到一个数据库。
DAl 将其来自数据库的响应写入数据合约,该数据合约通过服务通过线路传递给客户端。
我读到这可能是反模式“CRudy 接口”,但我不确定我是否正在共享数据合同。
如果我使用反模式,谁能建议一个更好的模式用于我需要的行为?
【问题讨论】:
目前我正在创建一个 WCF 服务,它必须连接到一个 DAL,它只使用 ADO.net 和存储过程连接到一个数据库。
DAl 将其来自数据库的响应写入数据合约,该数据合约通过服务通过线路传递给客户端。
我读到这可能是反模式“CRudy 接口”,但我不确定我是否正在共享数据合同。
如果我使用反模式,谁能建议一个更好的模式用于我需要的行为?
【问题讨论】:
嗯,关于 CRUDy 模式及其优缺点似乎存在一些争议。至少,我会调用一个服务接口,让你编写这种代码来使用它作为反模式(如注释here):
service.CreateCustomer(c);
foreach(Group group in c.Groups)
service.AddCustomerToGroup(c.CustomerId, group.GroupId);
foreach(Person person in c.Contacts)
service.AddCustomerContact(c.CustomerId, person);
暴露 CRUDy 接口本身是不是很糟糕?我不会这么说的。重要的是提供一个接口,它将
【讨论】:
【讨论】:
如果您要实现一个简陋的用例,您将得到一个简陋的界面,别担心。反模式是当你以粗鲁的方式实现非粗鲁的东西时。
【讨论】: