ASP .NET Core 3.1 IOC - 只注入部分参数,传递其他参数
创始人
2024-11-11 13:30:39
0

在ASP .NET Core 3.1中,可以使用依赖注入容器(DI Container)来解决只注入部分参数并传递其他参数的问题。下面是一个示例代码:

首先,创建一个带有部分参数的服务类:

public class MyService : IMyService
{
    private readonly ILogger _logger;
    private readonly string _additionalParameter;

    public MyService(ILogger logger, string additionalParameter)
    {
        _logger = logger;
        _additionalParameter = additionalParameter;
    }

    public void DoSomething()
    {
        _logger.LogInformation($"Additional parameter: {_additionalParameter}");
        // 执行其他操作...
    }
}

然后,在Startup.cs文件的ConfigureServices方法中进行注册:

public void ConfigureServices(IServiceCollection services)
{
    services.AddControllers();

    // 注册ILogger服务
    services.AddLogging();

    // 注册自定义服务并指定参数
    services.AddTransient(provider =>
    {
        var logger = provider.GetRequiredService>();
        var additionalParameter = "Additional parameter value";
        return new MyService(logger, additionalParameter);
    });
}

现在,可以在控制器中通过构造函数注入IMyService并使用它:

public class MyController : ControllerBase
{
    private readonly IMyService _myService;

    public MyController(IMyService myService)
    {
        _myService = myService;
    }

    public IActionResult MyAction()
    {
        _myService.DoSomething();
        return Ok();
    }
}

在以上示例中,我们通过注册时使用匿名函数的方式,手动解析ILogger和字符串参数,并将它们传递给MyService的构造函数。然后,IMyService可以在控制器中使用,并且构造函数中的其他参数也会被正确传递。

请根据您的具体需求修改示例代码。

相关内容

热门资讯

黑科技有挂(wpk安卓版)智星... 这是一款非常优秀的智星德州 ia辅助检测软件,能够让你了解到智星德州中牌率当中全部隐藏参数,与同类智...
黑科技挂(德扑之星系统)德州俱... 黑科技挂(德扑之星系统)德州俱乐部从来存在有挂!太夸张了往昔是真的有挂(2026已更新)(哔哩哔哩)...
黑科技插件(德州之星app安卓... 大家肯定在之前德州之星或者德州之星中玩过黑科技插件(德州之星app安卓版)AApoker素来是真的有...
黑科技脚本(pokerrrr2... 1、黑科技脚本(pokerrrr2挂)wePoKe一贯是有挂!太坑了真是有挂(2022已更新)(哔哩...
黑科技工具(wepoke ai... 黑科技工具(wepoke ai)aapOker一向是有挂!太无语了从前存在有挂(2024已更新)(哔...
黑科技辅助(aapoker实测... 1、黑科技辅助(aapoker实测)德州aa州克先前存在有挂!太夸张了竟然有挂(2026已更新)(哔...
黑科技最新(德扑胜率计算)WP... 黑科技最新(德扑胜率计算)WPK都是是有挂!太嚣张了原来有挂(2025已更新)(哔哩哔哩);精心打造...
黑科技app(aapoker下... WePoker透视辅助版本稳定性对比与推荐‌:黑科技app(aapoker下载)微扑克插件原先有挂!...
黑科技游戏(wepoke挂)a... 黑科技游戏(wepoke挂)aaPOKER都是是真的有挂!太无语了本来是真的有挂(2022已更新)(...
黑科技辅助(wepoke软件)... 黑科技辅助(wepoke软件)wpk线上原本真的是有挂!太嚣张了真是是真的有挂(2024已更新)(哔...