【发布时间】:2018-08-29 04:19:52
【问题描述】:
我正在对 .NET Core 应用程序进行集成测试,并希望使用一些测试配置。我的配置是一个 POCO 类,它通过appsettings.json 配置,然后通过IOptions<T> 使用。在我的测试中,我想使用该类的一个实例。
代码如下:
var mySettings = GetTestSettings(); // factory method returning POCO class
var configurationBuilder = new ConfigurationBuilder();
// I am looking for something like
configurationBuilder.AddInMemoryObject("Settings", mySettings);
// does not work, result is just string
configurationBuilder.AddInMemoryCollection("Settings",
JsonConvert.SerializeObject(mySettings));
// requires filename
configurationBuilder.AddJsonFile("filename.json");
将 POCO 提供给配置的最简单方法是什么?
【问题讨论】:
-
你想对设置做什么,例如在另一个类、控制器等中使用?这个 POCO 类是否也用于存储从 appsettings.json 文件加载的设置?
-
@SimplyGed 更新了我的问题。
-
您只想将 IOptions
传递给您的测试类吗?这个答案解决了stackoverflow.com/a/40898882/2309376 -
不,我用的是TestServer,应该注入这个配置。
标签: c# asp.net-core .net-core