如何在共享 Visual Studio 解决方案中使用隔离开发数据库

Posted

技术标签:

【中文标题】如何在共享 Visual Studio 解决方案中使用隔离开发数据库【英文标题】:How to use isolated development database in shared Visual Studio solution 【发布时间】:2012-09-10 00:37:29 【问题描述】:

我正在领导一个小型软件开发团队(4 人),并且刚刚在一个源代码控制的 SQL Server 2008 数据库项目上破土动工,每个开发人员都有独立的开发数据库。我仍在一步一步实现,但我设想每个开发人员都有自己的数据库,命名方案类似于<ProjectName>_DEVELOPMENT_<TFSUserName>。根据我一直在阅读的 MSDN 文章,所有这些都是推荐的,但如果这听起来有点不对劲,请告诉我。

无论如何,我们已经开发了一段时间的共享应用程序解决方案。过去,我们没有数据库版本控制,只是在需要填充新的参考数据或测试功能时直接从 SQL Server Management Studio 修改我们的数据库——一个更改会立即影响其他所有人。所以有了这个新的变化,我想知道让每个人从应用程序解决方案连接到他们隔离的开发数据库的最佳方法是什么。在隔离数据库之前,我们与数据库的连接在应用程序的 web.config 中指定为连接字符串。如果我们每个人都将拥有自己的数据库,那么我可以看到它工作的唯一方法是让每个开发人员在他们的本地解决方案中设置他们的连接字符串以指向他们的个人数据库。但是更改 web.config 将在解决方案中签出该文件,因此开发人员在签入对基线的应用程序更改时总是必须专门取消选中该文件。每个开发人员在进行应用程序测试时,是否有一种不那么笨拙的方式来使用他们的隔离数据库?

【问题讨论】:

【参考方案1】:

我建议您不要将数据库名称设为特定于用户名。而是为每个开发人员设置相同的数据库名称,并始终通过 localhost (localhost\<ProjectName>_DEVELOPMENT) 引用它。然后相同的连接字符串将适用于每个开发人员。

MSDN 建议使用特定于用户名的数据库更适合共享开发环境。它绝对不适合本地化环境。

【讨论】:

以上是关于如何在共享 Visual Studio 解决方案中使用隔离开发数据库的主要内容,如果未能解决你的问题,请参考以下文章

如何在 .NET Core 类库中引用 Visual Studio 共享项目

如何在不同的解决方案之间共享相同的 Visual Studio 项目?不同的 app.config 和 settings.settings

如何一次在一个解决方案中编写多个项目中的代码? [Visual Studio / Xamarin]

Visual Studio 解决方案:静态项目还是共享项目?

Visual Studio:如何使用 IIS Express 和跨项目引用在共享项目中调试 TypeScript(无链接或复制文件)

如何设置Visual Studio远程调试