Kev*_*ven 0 c# asp.net asp.net-mvc
我的基本控制器和动作过滤器在同一名称空间中但在不同的类中.我在基本控制器内创建了一个请求http标头的类,我想在我的动作过滤器中调用该方法.
如果我做的很简单,Details dtls = GetHeaders()那么intelliSense会询问我是否要GetHeaders()在动作过滤器中创建另一个方法.
所以我的问题是我可以直接从动作过滤器中调用类中的GetHeaders()方法BaseController吗?我该怎么办?如果没有,我该如何调用该方法?
namespace Infrastructure
{
public class BaseController
{
public Details GetHeaders()
{
//Get the headers
}
}
public class MyFilterAttribute : ActionFilterAttribute
{
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
base.OnActionExecuting(filterContext);
//Call GetHeaders() to get Header1 data
}
}
}
Run Code Online (Sandbox Code Playgroud)
你有没有试过从控制器获取控制器 filterContext
var controller = filterContext.Controller as BaseController;
controller.GetHeaders();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4380 次 |
| 最近记录: |