首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

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

在ASP.NET MVC 2中,可以通过以下步骤将参数传递给自定义ActionFilter:

  1. 创建一个自定义的ActionFilter类,继承自ActionFilterAttribute,并重写OnActionExecuting方法。例如:
代码语言:csharp
复制
public class CustomActionFilter : ActionFilterAttribute
{
    public override void OnActionExecuting(ActionExecutingContext filterContext)
    {
        // 在此处处理传递的参数
        var parameterValue = filterContext.ActionParameters["parameterName"];
        // 其他逻辑处理
        base.OnActionExecuting(filterContext);
    }
}
  1. 在需要应用该ActionFilter的Controller或Action上添加CustomActionFilter特性。例如:
代码语言:csharp
复制
[CustomActionFilter]
public class MyController : Controller
{
    public ActionResult MyAction(string parameterName)
    {
        // Action逻辑
        return View();
    }
}
  1. 在需要传递参数的地方,可以通过在Action方法的参数列表中添加相应的参数,并在调用该Action时传递参数值。例如:
代码语言:csharp
复制
public ActionResult MyAction(string parameterName)
{
    // Action逻辑
    return View();
}
  1. 当请求到达该Action时,自定义的ActionFilter会在Action执行之前被调用,并且可以通过filterContext.ActionParameters获取到传递的参数值。

需要注意的是,ASP.NET MVC 2中的自定义ActionFilter不支持直接通过属性传递参数,只能通过Action方法的参数列表传递参数。

推荐的腾讯云相关产品:腾讯云云服务器(CVM)和腾讯云函数(SCF)。

  • 腾讯云云服务器(CVM):提供弹性、安全、稳定的云服务器实例,适用于各种应用场景。产品介绍链接:腾讯云云服务器
  • 腾讯云函数(SCF):无服务器计算服务,支持事件驱动的函数计算模型,无需管理服务器,按需弹性运行。产品介绍链接:腾讯云函数
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

使用ActionFilterAttribute 记录 WebApi Action 请求和返回结果记录

asp.net mvc 中 webapi 和 mvc 处理消息是两个不同管道,Asp.net mvc 和 webapi 为我们提供 ActionFilterAttribute 拦截器,通过 重写 ...由于asp.net MVC 与webapi  是两个完全独立管道: MVC由System.Web.Mvc.ActionFilterAttribute 来做action请求拦截。... 这个全局管道里面注册 ActionFilter ,位置在App_Start目录>FilterConfig 类>RegisterGlobalFilters 方法 使用参数filters , filters.Add...好了道理已经讲完了,现在开始我自己要实现 日志记录功能, 需求是记录所有访问webapi action(请求地址、内容、访问用户、提交参数、返回结果、以及一些客户端信息) 由于MVC 框架 提倡契约编程...public class OperateTrackAttribute : ActionFilterAttribute { /// /// 自定义参数

4.4K30
  • 七天学会ASP.NET MVC (五)——Layout页面使用和用户角色管理

    系列文章 七天学会ASP.NET MVC (一)——深入理解ASP.NET MVC 七天学会ASP.NET MVC (二)——ASP.NET MVC 数据传递 七天学会ASP.NET MVC (三)——...ASP.Net MVC 数据处理 七天学会ASP.NET MVC (四)——用户授权认证问题 七天学会ASP.NET MVC (五)——Layout页面使用和用户角色管理 七天学会ASP.NET MVC...(六)——线程问题、异常处理、自定义URL 七天学会ASP.NET MVC(七)——创建单页应用 目录 实验22——添加页脚 实验23——实现用户角色管理 实验24——实现项目外观一致性 实验25——...什么是 ActionFilter 与AuthorizationFilter类似,ActionFilterASP.NET MVC过滤器中一种,允许在action 方法中添加预处理和后处理逻辑。...实验24——实现项目外观一致性 在ASP.NET能够保证外观一致性是母版页使用。MVC却不同于ASP.NET,在RAZOR中,母版页称为布局页面。 在开始实验之前,首先来了解布局页面 1.

    4.9K80

    ASP.NET Core - 在ActionFilter中使用依赖注入

    演示一下,首先自定义一个ActionFilter,通过构造函数注入IMyService: public interface IMyService { string GetServiceName...在ActionFilter中使用依赖注入 在ASP.NET CoreActionFilter中使用依赖注入主要有两种方式: ServiceFilterAttribute TypeFilterAttribute...这里有一个重要提示, ASP.NET Core runtime 并不保证这个filter是真正单例。所以不要试图使用这个属性来实现单例,并且业务系统依赖这个单例。...TypeFilterAttributeIsReusable属性: 跟上面的ServiceFilter一样,ASP.NET Core runtime 并不保证这个filter是真正单例,这里就不多啰嗦了...通过TypeFilterAttribute实例化ActionFilter,如果它构造器中参数类型在DI容器中找不到,会继续在Arguments参数列表里按顺序获取。

    1.1K20

    How ASP.NET MVC Works?

    “伪”MVC框架上Web应用 ASP.NET MVC是如何运行[2]: URL路由 ASP.NET MVC是如何运行[3]: Controller激活 ASP.NET MVC是如何运行[...ASP.NET MVCModelBinder及其提供机制 通过实例模拟ASP.NET MVCModel绑定机制:简单类型+复杂类型 通过实例模拟ASP.NET MVCModel绑定机制...MVC基于标注特性Model验证:将ValidationAttribute应用到参数ASP.NET MVC基于标注特性Model验证:一个Model,多种验证规则 ASP.NET MVC...客户端验证:jQuery验证 ASP.NET MVC客户端验证:jQuery验证在Model验证中实现 ASP.NET MVC客户端验证:自定义验证 七、Action执行 ASP.NET...[下篇] 深入探讨ASP.NET MVC筛选器 认识ASP.NET MVC5种AuthorizationFilter ASP.NET MVCActionFilter是如何执行

    1.5K60

    ASP.NET Core 中间件详解及项目实战

    asp.net core 提供了IApplicationBuilder接口来让把中间件注册到asp.net管道请求当中去,中间件是一个典型AOP应用。...下面是一个微软官方一个中间件管道请求图: 可以看到,每一个中间件都都可以在请求之前和之后进行操作。请求处理完成之后传递给下一个请求。...中间件(Middleware)和过滤器(Filter)区别 熟悉MVC框架同学应该知道,MVC也提供了5大过滤器供我们用来处理请求前后需要执行代码。...怎么样自定义自己中间件 背景:我们项目使用到中间件情景是,需要和其他部门进行用户(User)信息共享。...等等,我们好像还需要一些配置,比如流程图中ReturnUrl,平台CookieKey值,平台验证用户合法性接口地址等参数

    66120

    ASP.NET MVCAction Filter

    一年前写了一篇短文ASP.NET MVC Action Filters,整理了Action Filter方面的资源,本篇文章详细描述Action Filter。...为了让用户更简单创建一个自定义Action filter,ASP.NET MVC Framework提供了一个基类ActionFilterAttribute,这个类实现了IActionFilter和IResultFilter...从广义上来说,在ASP.NET MVC Framework中,任何实现filter类型都是action filter。...下面我们来介绍一个如何自定义一个Action Filter,这个示例代码来自ASP.NET MVC 2示例Tailspin Travel,实现功能是Action执行时间,页面经常需要一个当前页面执行时间功能...,这是一个非功能性需求,ASP.NET MVC上就可以使用自定义ActionFilter来实现,从上面的介绍,就知道我们需要重写OnActionExecuting和OnActionExecuted方法

    1.8K100

    Asp.Net Core Filter 深入浅出那些事-AOP

    二、Filter-过滤器 Filter是延续ASP.NET MVC产物,同样保留了五种Filter,分别是Authorization Filter、Resource Filter、Action Filter...通过不同Filter可以有效处理封包进出加工,本篇将介绍ASP.NET Core五种Filter运作方式。...OnException方法有一个ExceptionContext异常上下文,其中包含了具体异常信息,HttpContext及mvc路由信息。...异常"); } } 3.4 Action Filter 作用:可以通过ActionFilter 拦截 每个执行方法进行一系列操作,比如:执行操作日志、参数验证,权限控制 等一系列操作...ServiceFilter和TypeFilter都实现了IFilterFactory ServiceFilter需要对自定义Filter进行注册,TypeFilter不需要 ServiceFilter

    50120

    asp.net core 系列】10 实战之ActionFilter

    ActionArguments 表示Action参数列表,这里面放着各种从用户接到请求参数以及其他中间处理程序添加参数 Controller 表示执行该请求控制器,在之前我们提过,asp.net..., 这部分在后续再为小伙伴们细说 RouteData 路由信息,asp.net core 在处理请求时解析出来路由信息,包括在程序中修改路由信息 2....使用ActionFilter 在《【asp.net core 系列】9 实战之 UnitOfWork以及自定义代码生成》也就是上一篇中,介绍到了ActionFilter与普通特性类一致,可以通过标注控制器然后启用该...当然,在asp.net core 中添加了另外一种使用ActionFilter方式,Setup.cs中 public void ConfigureServices(IServiceCollection...如果需要使用asp.net core默认依赖注入可以使用 AddService进行配置。(依赖注入内容在后续会讲解)。 3.

    64730

    Asp.Net Core 中间件应用实战中你不知道那些事

    下面是一个微软官方一个中间件管道请求图: 1.2 中间件和过滤器区别 Filter是延续ASP.NET MVC产物,同样保留了五种Filter,分别是Authorization Filter、...同作为两个AOP利器,Filter(过滤器)更贴合业务,它关注于应用程序本身,比如你看ActionFilter 和 ResultFilter,它都直接和你Action,ActionResult交互了,...它是MVC一部分,它可以拦截到你Action上下文一些信息,而中间件是没有这个能力。 可以看到,每一个中间件都都可以在请求之前和之后进行操作。...请求处理完成之后传递给下一个请求 1.3 中间件使用场景 那么,何时使用中间件呢?...自定义中间件教程文章请点击自定义中间件官方教程 一文。

    85510

    ASP.NET Core 基础知识】--路由和请求处理--请求处理管道

    这些部分共同构成了ASP.NET Core请求处理管道,每个中间件都会对请求进行特定处理,然后将请求传递给下一个中间件,直到请求处理完毕并返回响应。...二、 ASP.NET Core MVC 和 Razor Pages 请求处理管道 ASP.NET Core MVC 和 Razor Pages 请求处理管道都是基于中间件,它们处理流程大致相同,...2.1 ASP.NET Core MVC 请求处理管道 在 ASP.NET Core MVC 中,请求处理管道主要包括以下中间件: 路由选择中间件(Router Middleware): 根据请求...三、如何将自定义中间件添加到请求处理管道 要将自定义中间件添加到请求处理管道,可以按照以下步骤进行操作: 创建自定义中间件: 首先需要创建一个自定义中间件类,该类需要实现 Microsoft.AspNetCore.Http.IMiddleware...而依赖注入做法是,通过外部容器来创建和管理对象,并将所需对象以参数形式传递给使用它对象。

    11100

    前言

    前言 前面两篇写比较简单,刚开始写这个系列时候我面向对象是刚开始接触Asp.Net MVC朋友,所以写尽量简单。所以写没多少技术含量。...把这些技术总结出来,然后一简单方式让更多的人很好接受这是我一直努力方向。后面会有稍微复杂点项目!让我们一起期待吧! 此文我将跟大家介绍一下Asp.Net MVC3 Filter一些用法。...第一节:Filter知识储备 项目大一点总会有相关AOP面向切面的组件,而MVC(特指:Asp.Net MVC,以下皆同)项目中呢Action在执行前或者执行后我们想做一些特殊操作(比如身份验证,日志...Asp.Net MVC提供了以下几种默认Filter: Filter Type 实现接口 执行时间 Default Implementation Authorization...: 我们看到结果是Controller上ActionFilter先于Action上打的标记执行。

    37910

    深入探讨ASP.NET MVC筛选器

    ASP.NET MVC筛选器是一种基于AOP(面向方面编程)设计,我们将一些非业务逻辑实现在相应筛选器中,然后以一种横切(Crosscutting)方式应用到对应Action方法。...ASP.NET MVC提供了四种类型筛选器(AuthorizationFilter、ActionFilter、ResultFilter和ExceptionFilter),它们对应着相应筛选器接口(IAuthorizationFilter...[本文已经同步到《How ASP.NET MVC Works?》...一、Filter 虽然ASP.NET MVC提供四种类型筛选器具有各自实现接口,但是对于筛选器提供体系来说所有的筛选器都通过具有如下定义Filter类型表示。...也就是说,在默认情况下ASP.NET MVC会采用这三种FilterProvider来提供所有的Filter对象。

    1.2K80

    Serilog高级玩法之用Serilog记录所选终结点附加属性

    向Serilog请求日志添加扩展数据 在上一篇文章中,我展示了如何将Serilog请求日志记录添加到您应用程序中,因此在此不再赘述。...例如,在下图中(取自我书《 ASP.NET Core in Action》),当响应“回”到中间件管道时,在第5步写入日志: ?...但是MVC相关属性是个例外,它们是MVC中间件“内部”特性,例如action 名称或RazorPage处理程序名称。在下一篇文章中,我将展示如何将它们添加到Serilog请求日志中。...在本文中,我展示了如何通过自定义Serilog RequestLoggingOptions来添加这些附加属性。...这些属性将作为附加属性添加到Serilog生成结构化日志中。在下一篇文章中,我将展示如何将MVC特定属性值添加到请求日志中。敬请期待吧!

    1.7K10
    领券