Tag: action filter

转换自定义操作筛选器以供Web API使用?

我发现了一个非常好的动作filter,它将逗号分隔的参数转换为generics类型列表: http : //stevescodingblog.co.uk/fun-with-action-filters/ 我想使用它,但它不适用于ApiController,它完全忽略它。 有人可以帮助转换这个用于Web API吗? [AttributeUsage(AttributeTargets.Method)] public class SplitStringAttribute : ActionFilterAttribute { public string Parameter { get; set; } public string Delimiter { get; set; } public SplitStringAttribute() { Delimiter = “,”; } public override void OnActionExecuting(ActionExecutingContext filterContext) { if (filterContext.ActionParameters.ContainsKey(this.Parameter)) { string value = null; var request = filterContext.RequestContext.HttpContext.Request; if (filterContext.RouteData.Values.ContainsKey(this.Parameter) && […]

使用Castle Windsor将依赖项注入CustomAttribute

在我的ASP.Net MVC应用程序中,我实现了一个Custom ActionFilter来授权用户。 我使用CastleWindsor为所有控制器提供dependency injection,如下所示: protected virtual IWindsorContainer InitializeServiceLocator() { IWindsorContainer container = new WindsorContainer(); ControllerBuilder.Current.SetControllerFactory(new WindsorControllerFactory(container)); container.RegisterControllers(typeof(HomeController).Assembly); ComponentRegistrar.AddComponentsTo(container); ServiceLocator.SetLocatorProvider(() => new WindsorServiceLocator(container)); return container; } 在我的CustomAttribute中,我需要一个由所有控制器使用的依赖项,但是我无法在属性中使用基于构造函数的注入。 那么这里最干净的方式是什么? 我该如何提供依赖?

如何将参数传递给ASP.NET MVC 2中的自定义ActionFilter?

我正在尝试创建一个自定义ActionFilter,它操作一组参数,这些参数将从控制器传递给它。 到目前为止,我的客户ActionFilter看起来像这样: public class CheckLoggedIn : ActionFilterAttribute { public IGenesisRepository gr { get; set; } public Guid memberGuid { get; set; } public override void OnActionExecuting(ActionExecutingContext filterContext) { Member thisMember = gr.GetActiveMember(memberGuid); Member bottomMember = gr.GetMemberOnBottom(); if (thisMember.Role.Tier <= bottomMember.Role.Tier) { filterContext .HttpContext .Response .RedirectToRoute(new { controller = "Member", action = "Login" }); } base.OnActionExecuting(filterContext); […]