Pur*_*ion 7 .net oop wcf data-access-layer n-tier-architecture
有一段时间了,我和我的团队一直在Web服务外观(使用WCF)中包装数据访问层并从业务逻辑层调用它.同时,我们可以简单地使用存储库模式,其中业务逻辑层通过接口在本地消耗数据访问层,并且在任何时间点,我们都可以切换它以使其命中服务(如果需要).
问题是:什么时候将数据访问层包装在服务外观中,什么时候不是?现在,似乎主要优势是其他应用程序可以使用该服务,但如果它们是用.NET编写的内部应用程序,那么它们只能使用.NET程序集.将DAL包含在我不知道的服务中还有其他优点吗?
这实际上取决于数据服务的使用内容/方式。如果只有几个应用程序,这没什么大不了的,但如果您有很多应用程序并且数据方面有很多更改,那么推出更新版本并确保不会破坏可能会出现问题现有的应用程序。
使用 WCF,您可以对服务进行版本控制,这将有助于降低这种风险。因此,实际上,这在很大程度上取决于消费者的数量、消费者的位置(内部/外部)以及更新频率。
这至少是我在评估时使用的。