我已经构建了一个Compact Framework应用程序供交付驱动程序使用。该系统包括服务器上的WCF服务和SQL数据库,以及在移动设备上运行的SQL CE数据库和CF应用程序。
现在的问题是,当我发布新版本时,如何轻松更新所有这些内容?问题是:
我可以看到所有这些的解决方案,但似乎很多工作。我认为在我开始之前获得一些提示可能会有所帮助。
非常感谢 标记
答案 0 :(得分:1)
我做了一些项目或多或少相同的要求。
它可以部署到数百个PDA
我建议在应用程序中使用更新程序。它通过Web服务检查新版本的可用性。如果有更新,请下载。然后运行另一个进程来执行更新(此过程我只用于运行wceload.exe然后重启设备)。
首次安装在PDA上时,必须填充SQL CE数据库。这可能需要一段时间。我不希望每次升级应用程序时都这样做,所以我将不得不运行脚本来更新数据库模式,而不是仅仅替换整个文件并重新填充它。
不要将数据库包含为应用程序的文件,创建脚本并检查数据库是否存在,如果没有创建数据库。
需要更新WCF服务代码
我有一个独立的更新网络服务,因此合同不会改变。如果更新可用,则接收当前版本,身份验证并返回,以及要下载文件的URL。
您需要两个不同的地址才能更新并保持其他部分正常工作。只需在新版本中执行重定向。
需要更新SQL数据库架构
我希望你的意思是你引用服务器后端,所以我建议使用视图来搜索信息。
如果您对SQLCE数据库意味着您可以发送修补脚本或者清除数据库并重新创建数据库。