asp.net5.0webapi项目中在中间件中访问TempData。
创始人
2024-09-17 03:30:18
0
  1. 在Startup.cs的Configure方法中注册TempData:
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
    app.UseRouting();
    app.UseEndpoints(endpoints =>
    {
        endpoints.MapControllers();
    });
    app.UseSession();  // 添加支持session
    app.Use(async (context, next) =>
    {
        context.RequestServices.GetRequiredService().SetSession(context.Session);
        await next.Invoke();
    });
    app.Use(async (context, next) =>
    {
        var tempData = context.RequestServices.GetService().GetTempData(context);
        context.Items["TempData"] = tempData;  // 保存到上下文中,以便后续中间件使用
        await next.Invoke();
    });  
}
  1. 使用中间件读取TempData:
public class MyMiddleware
{
    private readonly RequestDelegate _next;
    
    public MyMiddleware(RequestDelegate next)
    {
        _next = next;
    }
    
    public async Task InvokeAsync(HttpContext context)
    {
        var tempData = context.Items["TempData"] as ITempDataDictionary;
        if (tempData != null)
        {
            tempData["key"] = "value";  // 设置TempData值
        }
        
        await _next(context);
    }
}
  1. 注册中间件:
app.UseMiddleware();

注意:必须在Session中间件之后注册TempData中间件,否则可能无法正常使用TempData。

相关内容

热门资讯

出乎意料的是!永胜联盟辅助软件... 出乎意料的是!永胜联盟辅助软件!确实存在有辅助app(揭秘有挂)-哔哩哔哩1、金币登录送、破产送、升...
昨日!广西老友修改器!确实真的... 昨日!广西老友修改器!确实真的有辅助插件(有挂助手)-哔哩哔哩1、广西老友修改器脚本辅助下载、广西老...
值得注意的是!微乐游戏公众号辅... 值得注意的是!微乐游戏公众号辅助器!都是存在有辅助神器(有挂神器)-哔哩哔哩1.微乐游戏公众号辅助器...
今年以来!创思维怎么开挂!切实... 今年以来!创思维怎么开挂!切实真的是有辅助app(有挂方法)-哔哩哔哩1、进入游戏-大厅左侧-新手福...
突发!新九五有没有脚本!真是存... 突发!新九五有没有脚本!真是存在有辅助app(有挂工具)-哔哩哔哩一、新九五有没有脚本游戏安装教程牌...
据玩家消息!传送屋辅助器下载!... 据玩家消息!传送屋辅助器下载!其实是真的辅助挂(有挂秘籍)-哔哩哔哩1、上手简单,内置详细流程视频教...
此事迅速冲上热搜!wepoke... 此事迅速冲上热搜!wepoker底牌透视脚本!真是是真的辅助挂(有挂教学)-哔哩哔哩1、wepoke...
据报道!多乐跑得私人房间作z弊... 据报道!多乐跑得私人房间作z弊视频!都是有挂辅助软件(有挂规律)-哔哩哔哩据报道!多乐跑得私人房间作...
今年以来!钱塘十三少水外g挂!... 今年以来!钱塘十三少水外g挂!一贯真的是有辅助挂(有挂方略)-哔哩哔哩1、钱塘十三少水外g挂辅助软件...
近年来!家乡大贰小程序靠谱吗!... 近年来!家乡大贰小程序靠谱吗!确实存在有辅助修改器(证实有挂)-哔哩哔哩1、家乡大贰小程序靠谱吗透视...