servicestack GlobalRequestFilters 请求 Dto 为 null

问题描述 投票:0回答:1

我在 GlobalRequestFilters 文件中有一个

ServiceStack
apphost
过滤器来捕获身份验证请求,过滤器工作正常,但问题出在
req
中的 dto 中,
res
requestDto
为空!

this.GlobalRequestFilters.Add((req, res, requestDto) => {
     if (req.OperationName.ToLower()== "authenticate")
     {
         var authData =req.GetDto();
     }
});
c# .net servicestack
1个回答
2
投票

requestDto
在过滤器本身中传递,即:

GlobalRequestFilters.Add((req, res, requestDto) => {
    var authDto = requestDto as Authenticate;
    if (authDto != null)
    {
        //...
    }
});

上述方法的另一种方法是使用类型化请求过滤器,例如:

RegisterTypedRequestFilter<Authenticate>((req, res, authDto) => {
    //...
});
© www.soinside.com 2019 - 2024. All rights reserved.