我访问appsettings.json在.NET中的Core 2的Web API控制器只需添加如下:是services.AddSingleton <IConfiguration>真的需要在.NET核心2 API
public class MyController : Controller
{
private readonly IConfiguration appConfig;
public MyController(IConfiguration configuration)
{
appConfig = configuration;
}
}
如果没有启动类中添加以下ConfigureServices(IServiceCollection服务)后services.AddMvc();:
services.AddSingleton<IConfiguration>(Configuration);
是否有我的做法任何瑕疵?在.Net Core 2配置部分的官方文档中,没有提到使用'AddSingleton',甚至没有提到过:https://docs.microsoft.com/en-us/aspnet/core/fundamentals/configuration
也是通过搜索我找不到与访问配置相关的内容! https://docs.microsoft.com/en-us/search/index?search=AddSingleton&scope=ASP.NET+Core
链接下面示出AddSingleton仿佛强制性步骤:
Access appsettings.json values in controller classes
那么当用户在默认设置的旁边手动添加它时会发生什么?似乎没有警告或错误出现! –
与ASP.NET Core DI中的任何其他注册一样,只要有人从“IServiceProvider”请求该服务,就会使用** last **注册。因为在你的情况下,注册是一样的,没有什么变化(你现在有两个相同的服务相同的注册)。 –