【发布时间】:2017-03-27 10:07:17
【问题描述】:
我目前正在开发需要离线和在线操作的 Windows 窗体应用程序。这个想法是,当运行应用程序的设备有互联网连接时,它会从 Web 服务获取数据,但是当没有连接时,它会从本地文件系统中 JSON 格式的本地数据源获取数据。
我更喜欢使用服务和管理器设计模式(3 层)。但是,我不确定由哪个负责决定要使用的数据源。管理人员应该可以访问两个不同的服务并且每个服务查看不同的源并了解如何与每个服务交互,还是服务应该知道如何与两个数据源交互?
【问题讨论】:
-
我会建议一种服务根据当前状态分派到两个特定实现之一,这样您就可以将业务逻辑与持久性的细节分开,但是对于 SO,设计问题非常广泛.
标签: .net design-patterns