理论上我想制作两个项目:
1)Asp.net(Sever A)
2)DAL正在运行(服务器B)
我想利用命令对象与DAL进行通信。
ASP.net实例化命令类,例如CmdGetAllUsers,它使用IMyCommand接口并将其发送到DAL(使用ASMX或WCF)。
我的问题是:
CmdGetAllUsers的类定义是否需要存在于DAL服务器上?或者接口定义是否足够?
我的目标是减少重新部署DAL代码的需要,并将其作为一个相当简单的传递层。
非常感谢你的时间。
答案 0 :(得分:0)
要回答你的问题,不,接口定义是不够的。它需要具体实现,因为这是实现方法的代码所在。没有执行代码,没有执行。
更重要的是,为什么不直接在服务层实现方法?不要将命令传递回数据层来执行,而是让服务层将该方法实现为“命令”。你的DAL会更传统,但我觉得这是件好事。您可以将它本地化在DAL中,而不是在所有各种Command类实现中分散您的数据库代码。您还将拥有一个中心位置(服务)来执行任何与业务相关的规则执行。