我正在尝试编写一个 .NET/MS SQL 应用程序,该应用程序将从 Web 服务下载每日天气数据,并且我想将该数据存储/缓存在本地数据库中。
它的使用方式是:
- 用户将访问我的网页,输入开始和结束日期范围
- 该代码将从数据库中检索数据,并从 Web 服务中检索任何丢失的数据。
- 请求日期范围的天气数据将呈现给用户。
我用来下载天气数据的网络服务也接受从/到日期作为参数。
因为我不知道用户将输入哪些日期,所以我最终可能会在数据库中缓存分段数据。
我正在尝试解决几个问题:
- 如何根据存储在数据库中的已下载(如果有)数据段正确确定需要下载的连续数据范围(从/到)?
- 理想情况下,我想进行一个 Web 服务调用而不是多个。
- 收到数据后,如何填写数据库中的空白,丢弃已存在日期的信息?
到目前为止,我已经尝试为项目 1 和 2 编写算法,但是日期范围算术变得复杂,我无法完全让它工作。第 3 项应该是微不足道的。
是否已经有解决类似问题的算法?