【问题标题】:including databases and .net with software包括数据库和带有软件的 .net
【发布时间】:2013-10-04 03:34:37
【问题描述】:

当我构建我的软件时,我是否可以将解决方案中的所有内容与软件安装程序合并(可能使用 InstallSheild?)

我目前正在编写的软件使用带有SQL的数据库,并且是用C# 5.0编写的,那么在安装软件时我该如何将数据库、SQL、C#、.NET等安装到我的客户计算机上呢?

【问题讨论】:

  • 你使用的是什么类型的数据库?
  • SQL Server 2012 版?
  • 如果这是一个单用户应用程序,在客户端安装 sql server 可能没有意义。如果许多用户共享同一个数据库,则将 sql server 安装在单独的共享服务器实例上更有意义
  • 我会研究 Sql Compact 版本,因为它是基于单个文件的客户端数据库。 Sql Server 通常不是适合单用户应用程序的数据库。安装Sql Server也比较麻烦
  • 这里是关于精简版的链接msdn.microsoft.com/en-us/data/ff687142(v=msdn.10).aspx 看看并了解更多信息,以便您决定这是否适合您的解决方案。

标签: c# database winforms compilation


【解决方案1】:

是的,您可以使用安装程序执行此操作。 InstallShield 会这样做,但价格相当昂贵。 Wix 工具集可以做到这一点,而且它是免费的,但它不是我用过的最友好的安装程序(尽管一旦你掌握了它,它就可以很好地工作)。

这两者都允许非常简单地安装 .NET 框架。您需要在安装 SQL 方面做一些工作。

虽然您可以通过这种方式安装 SQL Server Full 或 Express,但使用 SQL Compact 会容易得多。我不记得许可证,但我很确定您可以将 SQL Compact DLL 与您的项目一起部署,而无需实际安装它。

【讨论】:

  • confused.com :( 尝试在我的笔记本电脑上安装 compact 并且无法打开程序,怎么会?
  • 你需要 .net 4 full 而不是 .net 4 客户端
【解决方案2】:

是的,您可以使用安装包部署 SQL 数据库和 .Net frame work。您也可以使用Windows Installer 来实现这一点。

Deploying Sql database with MSI

您必须首先添加您的sql script file 和您的msi package 脚本应该有必要的步骤来创建数据库模式,当它在SQL 数据库上执行时。您可以使用SMO(Sql server Management Object) 库在 sql 数据库上执行此脚本内容。检查我发布工作方法的另一个线程以读取文件内容并在 SQL 数据库上执行以在部署期间创建数据库。

Execute sql script on SQL server using C#

Deploying .Net Frameowrk

转到MSI Project > Properties > Prerequisites > Download prerequsites from the same location as my computer

当您使用此配置构建 MSI 项目时,您将获得一个额外的 exe 文件 dotNetFx40_Full_x86_x64.exe,它可以在客户端机器上部署 .Net 框架。您可以在安装应用程序时执行此 MSI。

【讨论】:

  • 在不相关的注释上,请不要approve suggested edits 对非代码使用反引号,而是拒绝或改进它们 - 参见例如here为什么
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-10-22
  • 1970-01-01
  • 2021-03-15
  • 2013-01-10
  • 1970-01-01
  • 2010-10-10
  • 1970-01-01
相关资源
最近更新 更多