c# - 将 WPF 应用程序与 SQL Server 数据库一起部署的最有效方法是什么?

标签 c# sql-server wpf

我正在构建一个连接到 SQL Server 数据库的 WPF 应用程序。我想知道应该如何将应用程序与本地数据库一起部署在客户端计算机上。

我最初的想法是(假设客户端计算机安装了 SQL Server):

  1. 交付应用程序的.exe文件
  2. 提供一个脚本文件来运行我的存储过程以创建数据库和表

有更好的方法吗?我可以在应用程序内创建一个服务,在计算机注册表中设置某种 bool 值,并仅在第一次运行“init-database-scripts”,但感觉不对。

还有其他建议吗?

谢谢!

最佳答案

首先,我强烈考虑使用 WiX 这样的工具制作一个实际的安装程序。它可以在安装时为您运行脚本,因此您不必处理注册表等问题。

假设您使用 Entity Framework - Code First,还有另一个选项;您可以使用数据库初始值设定项来创建数据库。如果您从不认为您的模型会更改,DropCreateDatabaseIfModelChanges 将起作用,否则启用迁移并使用迁移初始值设定项。

要使用您选择的初始化程序,请确保在应用程序启动例程中调用Database.SetInitializer

关于c# - 将 WPF 应用程序与 SQL Server 数据库一起部署的最有效方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40854357/

相关文章:

c# - Entity Framework 查询刚刚添加但未保存的值

asp.net - 如何开发、测试、版本、同步SQL Server 2000、2005、2008、2008R2数据库?

sql-server - TSQL - 带有复合键的 MERGE 语句

c# - 加密 App.Config 部分并部署到多台机器

c# - DataGridView.AutoResizeColumns 忽略列标题高度

c# - 如何在 asp.net mvc 4 的 apicontroller 中使用 session

c# - 使用c#在wpf listview中添加图像

sql - 在 SQL Server 2012 中将 OFFSET/FETCH 与 Fulltext 结合使用时性能下降

c# - 如何从后面的代码设置 WPF StrokeDashArray?

wpf - PowerShell 和 WPF GUI 卡住