我正在重新开发一个简单的应用程序,该应用程序现在作为一个面向公众的网站存在,在我们的 DMZ 中使用 SQL Server,这是我们桌面用户的另一个 Access 前端和后端。我还必须为没有网络访问(或互联网访问)的现场工作人员本地安装访问版本。
我正在尝试从头开始开发一个可以完成所有 3 种使用场景的应用程序:
- 连接到我们网络的桌面用户
- 没有网络连接或互联网的笔记本电脑用户
- 公共网页用户
一点关于应用程序。它由文件系统上的 100,000 多个 tiff 图像组成。数据库存储有关图像的元数据以及图像的相对 URL。有图像表、用户表(跟踪谁使用它和权限)和历史表(跟踪谁编辑了图像表上的内容)。该系统仅由大约 3 个将联网的人编辑,它主要是一个查找系统。
我从 winforms 和 EF 4 开始,并意识到这对我的需求来说太过分了。所以问题是:有没有办法支持在运行时本地缓存数据库和文件以“使应用脱机”,然后在回到办公室时同步?(如果有,我希望他们从不选择该选项,安装时不会在他们的 PC 上放置一个空的 SQL 数据库,因为我可以预先在每台笔记本电脑上安装数据库,因为它们只是需要它的人)
我应该只使用 ADO.net 作为数据库并且查询非常简单吗?我能从 EF 获得什么吗?几乎没有关系,不同的业务逻辑等。唯一复杂的查询是使用 AND/OR 的字段值列表等查找文件元数据的搜索。