BlazorServer中是否可以在中间件中注入作用域服务并在组件中注入同一实例?
创始人
2024-12-21 16:30:34
0

可以使用 HttpContextAccessor 将服务注入请求管道并再次将其注入组件中。具体步骤如下:

1.在 Startup.cs 中的 ConfigureServices 方法中添加服务注入。

services.AddScoped();

2.在中间件(middleware)中将服务注入请求管道(request pipeline)。

public class MyCustomMiddleware { private readonly RequestDelegate _next; private readonly MyScopedService _myScopedService;

public MyCustomMiddleware(RequestDelegate next, MyScopedService myScopedService)
{
    _next = next;
    _myScopedService = myScopedService;
}

public async Task Invoke(HttpContext httpContext)
{
    // 使用 _myScopedService 对 httpContext 进行操作
    await _next(httpContext);
}

}

3.在组件中再次将实例注入。

@inject MyScopedService MyScopedServiceInstance

4.在组件中使用注入的实例。

@MyScopedServiceInstance.SomeProperty

这样,MyScopedService 就可以同步使用于中间件和组件。

相关内容

热门资讯

每日必备!wepoker辅助工... 每日必备!wepoker辅助工具,hhpoker哪个俱乐部靠谱,曝光教程(真是有挂)-哔哩哔哩hhp...
发现一款!wepoker辅助器... 发现一款!wepoker辅助器安装包,中至上饶棋牌真的有挂透视,插件教程(有挂细节)-哔哩哔哩中至上...
分享一款!德普之星透视辅助软件... 分享一款!德普之星透视辅助软件,新518互游辅助,黑科技教程(真的有挂)-哔哩哔哩1、任何德普之星透...
一分钟揭秘!aapoker插件... 一分钟揭秘!aapoker插件,微信游戏锄大地辅助器,高科技教程(有挂细节)-哔哩哔哩微信游戏锄大地...
一起来讨论!sohoo pok... 一起来讨论!sohoo poker辅助,创思维透视下载链接,必赢教程(有挂细节)-哔哩哔哩1、每一步...
今日科普!德州私人局可以透视,... 今日科普!德州私人局可以透视,微信小程序微乐辅助器免费下载,安装教程(有挂细节)-哔哩哔哩1、许多玩...
带你了解!pokerworld... 带你了解!pokerworld修改器,同城游微信游戏辅助,力荐教程(真的有挂)-哔哩哔哩1、打开软件...
避坑细节!hhpoker透视挂... 避坑细节!hhpoker透视挂码可以用,新悠悠辅助,揭秘教程(有挂工具)-哔哩哔哩1、首先打开hhp...
六分钟了解!hhpoker免费... 六分钟了解!hhpoker免费辅助器,微信茶馆辅助器,辅助教程(有挂神器)-哔哩哔哩1、hhpoke...
重大通报!智星菠萝有挂,福建兄... 重大通报!智星菠萝有挂,福建兄弟十三水辅助器下载,实用技巧(揭秘有挂)-哔哩哔哩1、下载好福建兄弟十...