spvirus 2015-05-21 06:54 采纳率: 0%
浏览 3869

aspnet mvc 拦截器 怎么不执行action的代码

public class CheckCertAttribute : ActionFilterAttribute
{
///
/// 验证证书是否有效
///
public bool ValidCert { get; set; }
///
/// 解析证书
///
public bool ResolveCert { get; set; }

    public override void OnActionExecuting(ActionExecutingContext filterContext)
    {
        //判断一些事情
        //没有通过
        return;
    }

            }



             [HttpPost]
    [CheckCert(ValidCert = true)]
    public void GetCityCodeByName(string cityName)
    {
        string cityCode = string.Empty;
        var success = true;
        var message = "成功";
        try
        {
           //..
        }
        catch (Exception ex)
        {
            success = false;
            message = ex.Message;
        }
        WritResultToPage(cityCode, message, success);
    }


            为什么 我拦截器 已经 return 了  还会执行 action 里面的代码?需要什么设置么?
  • 写回答

1条回答 默认 最新

  • dnorange 2015-11-13 03:04
    关注

    OnActionExecuting中增加以下代码,将result设为空

    filterContext.Result = new EmptyResult();

    评论

报告相同问题?

悬赏问题

  • ¥15 制裁名单20240508芯片厂商
  • ¥20 易康econgnition精度验证
  • ¥15 msix packaging tool打包问题
  • ¥28 微信小程序开发页面布局没问题,真机调试的时候页面布局就乱了
  • ¥15 python的qt5界面
  • ¥15 无线电能传输系统MATLAB仿真问题
  • ¥50 如何用脚本实现输入法的热键设置
  • ¥20 我想使用一些网络协议或者部分协议也行,主要想实现类似于traceroute的一定步长内的路由拓扑功能
  • ¥30 深度学习,前后端连接
  • ¥15 孟德尔随机化结果不一致