【发布时间】:2023-03-15 14:05:02
【问题描述】:
我想使用 IOptions 通过 POCO 获取配置,但它会抛出错误消息“模型绑定的复杂类型不能是抽象类型或值类型,并且必须具有无参数构造函数”
DatabaseSettings.cs
public class DatabaseSettings
{
public string MongoDBServer { get; set; }
}
appsettings.json
"DatabaseSettings": {
"MongoDBServer": "localhost"
},
"Logging": {
"IncludeScopes": false,
"LogLevel": {
"Default": "Warning"
}
}
Startup.cs
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc();
services.Configure<DatabaseSettings>(Configuration.GetSection("DatabaseSettings"));
}
控制器
public IActionResult Create(IOptions<DatabaseSettings> options)
{
string test = options.Value.MongoDBServer;
return View();
}
我不知道如何处理它。你对我有什么建议吗?谢谢!
【问题讨论】:
-
您需要将选项注入到构造函数中,而不是注入到您的操作方法中。
-
感谢这解决了这个问题。
标签: asp.net asp.net-core