3

我想知道我是否可以从人们那里得到一些关于如何最好地构建 Visual Studio 解决方案的反馈。

我的核心要求是确保任何代码/测试都针对正确的资源运行,特别是数据库模式和示例数据。

我尝试了各种方法来做到这一点,取得了不同程度的成功。目前,我……</p>

  • 创建类库*.Installation.dll,用于创建、配置和填充数据库等。
  • 有一个类库 *.Build.dll,它有一个 MSBuild 任务,该任务从 csproj 文件中获取参数并传递给 Installation.dll。

这些都在他们自己的解决方案中。说 MyApp.Build.sln。我将其与我的主要解决方案分开维护,以防止文件锁定问题。

在我的主要解决方案中,说 MyApp.sln ...</p>

然后,我的测试项目调用 MSBuild 任务来创建用于集成测试的测试环境,包括数据库和示例测试数据。我的 Web/Windows 前端项目调用 MSBuild 为测试用户/我的手动测试创建可运行环境

因此,我正在使用 MSBuild 创建可定制的构建/环境以进行测试/运行。此外,我可以将 Installation.dll 包装到配置/设置工具中,以便在安装时为用户自动安装。

这是一个太复杂的场景吗?我担心我过度设计了这个并忽略了一些东西。它运行良好,但受很多元编程(例如,数据库构建代码、配置、构建任务等)的约束,这些元编程不直接涉及有形的、收费的工作。

我有 SubVersion 和 TeamCity。我想最终启用在每日/提交构建触发器上调用的 CI 构建。或者我可以以这种方式使用 TeamCity 来避免重建数据库/等。每个构建?

感谢您的任何见解。

4

0 回答 0