【问题标题】:can I use localdb for development and mssql server as production?我可以将 localdb 用于开发,将 mssql 服务器用作生产吗?
【发布时间】:2017-10-06 04:01:39
【问题描述】:

我编写了一个小工具,使用来自 MSSQL-Server 的数据。现在我在想,在生产服务器上开发并不是最佳实践。

我的想法是使用 localdb 进行开发,这可能吗?

我可以在部署工具时以某种方式切换到生产服务器连接吗?

【问题讨论】:

  • 您需要将本地 MDF 文件添加到生产服务器。当然它们应该是相同的版本(或者生产服务器应该是更高版本)
  • 考虑安装本地版本的 SQLServer(有免费版本),与您的生产 SQLServer 安装版本相同。然后你只需要更改用于开发和生产服务器的连接字符串

标签: c# sql-server winforms visual-studio localdb


【解决方案1】:

这取决于你需要为一个简单的应用程序提供多大的安全性,你可以在这种情况下使用 App.debug.config 和 App.release.config。

这是一个安全存储链接https://mitasoft.wordpress.com/2011/09/28/multipleappconfig/,您可以查看如何将连接字符串存储在安全存储中https://weblogs.asp.net/jongalloway/encrypting-passwords-in-a-net-app-config-file

【讨论】:

    【解决方案2】:

    使用 XML 转换,如果您使用像 Teamcity 这样的持续集成,它也会对您有所帮助,我使用下面的工具来查看 Visual Studio 中的差异非常有用的工具

    https://marketplace.visualstudio.com/items?itemName=WillBuikMSFT.SlowCheetah-XMLTransforms

    也可以查看https://msdn.microsoft.com/en-us/library/dd465318(v=vs.100).aspx

    【讨论】:

      【解决方案3】:

      对于开发环境,SQL Server Express 安装可能是比 LocalDB 更好的解决方案。 安装需要一些时间,但您将使用更接近生产环境的配置。

      【讨论】:

        【解决方案4】:

        是的,您可以安装 LocalDB,但 SQL Server Express 将是一种更可取的方法。您应该确保不对应用程序文件配置进行版本控制。无论如何,开发环境将与服务器的配置不同,您可能希望避免让不受信任的开发人员知道 prod 数据库密码。只需确保对所有其他文件进行版本控制,但不要跟踪该文件。如果您这样做,您的部署过程不应危及您的产品配置。虽然,该配置的备份可能是有用的资产。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2020-04-14
          • 2016-01-20
          • 2014-04-29
          • 1970-01-01
          • 2020-07-04
          • 1970-01-01
          • 2011-01-20
          相关资源
          最近更新 更多