gpt4 book ai didi

c# - 如何访问 ActionExecutingContext 中的 Request.Properties

转载 作者:太空宇宙 更新时间:2023-11-03 13:14:23 24 4
gpt4 key购买 nike

如何访问 ActionExecutingContext 中的 Request.Properties

public class UserFilter : ActionFilterAttribute
{
public void OnActionExecuting(ActionExecutingContext actionContext)
{
// Properties is not part of the Request here, so I can't access it
// Here Request is of type System.Web.HttpRequestBase
actionContext.HttpContext.Request.Properties.Add("UserData", new UserData());
}
}

我可以在 ApiController 中完成:

public class HomeController : ApiController
{
public HomeController()
{
// Here I can do it (here Request is of type
// System.Net.Http.HttpRequestMessage
this.Request.Properties.Add("UserData", new UserData());
}
}

最佳答案

对于 ApiController,您需要使用另一个 ActionFilterAttribute(位于 System.Web.Http.Controllers 命名空间中):

    using System.Web.Http.Controllers;
using System.Web.Http.Filters;

public class UserFilter : ActionFilterAttribute
{
public override void OnActionExecuting(HttpActionContext actionContext)
{
// Properties is part of the Request here, you can access it
// actionContext.Request.Properties
}
}

关于c# - 如何访问 ActionExecutingContext 中的 Request.Properties,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27080998/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com