gpt4 book ai didi

多环境设置中的 C# 数据库上下文

转载 作者:搜寻专家 更新时间:2023-10-30 23:36:40 24 4
gpt4 key购买 nike

我在多环境设置(DEV、TEST、PREPROD、PROD)中工作,需要编写可以在环境之间轻松切换的测试(例如使用环境作为输入参数)。

我的测试需要进行数据库查找。目前我已经为每个环境创建了一个 DBContext。 Image of solution explorer

目前我的测试负责创建正确的数据库上下文

像这样:

if (environment.ToLower().Equals("test")) { 
var arkiv = new TransformContentCenter_TestEntities1();
var invoicesNotProcesseed = entries
.Where(row => !arkiv.Brevarkiv.Any(row1 => row1.ReferenceNumber.Equals(row.invoiceNo) && row1.LetterType=="Invoice")).ToList();

我知道这是糟糕的代码风格,我正在寻找一种方法来创建负责环境处理的数据库层。但是,我不知道哪种设置是处理这种情况的最佳做法,也不知道如何将其实现到我的解决方案中。非常感谢任何帮助:)

最佳答案

您可以为此使用配置文件转换。参见 https://msdn.microsoft.com/en-us/library/dd465318(v=vs.100).aspx

您也可以使用第 3 方插件(或类似 http://gunnarpeipman.com/2013/11/using-web-config-transforms-with-app-config-files/ 的插件)为 app.config 完成同样的操作。

因此,您可以根据运行测试时可以查找的构建配置来转换键/值(如连接字符串)。

关于多环境设置中的 C# 数据库上下文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41345649/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com