gpt4 book ai didi

.net - IActionFilter 与 IResultFilter

转载 作者:行者123 更新时间:2023-12-03 15:56:28 26 4
gpt4 key购买 nike

请解释 IActionFilter 和 IResultFilter 之间的区别。我知道 OnActionExecuting 发生在 action 方法执行之前, OnActionExecuted 发生在 action 方法执行之后,以及执行 action 方法意味着什么。在 IResultFilter 的上下文中,我不明白的是执行操作结果的含义。

最佳答案

操作过滤器包含在 Controller 操作执行之前和之后执行的逻辑。例如,您可以使用操作过滤器来修改 Controller 操作返回的 View 数据。

结果过滤器(或 IResultFilters)包含在执行 View 结果之前和之后执行的逻辑。例如,您可能希望在 View 呈现给浏览器之前修改 View 结果。

阅读 Understanding Action Filters.

为了阐明 ViewResult 的作用,让我们看一下 ViewResultBase 的执行:

      viewEngineResult = this.FindView(context);
this.View = viewEngineResult.View;

TextWriter output = context.HttpContext.Response.Output;
this.View.Render(new ViewContext(context, this.View, this.ViewData, this.TempData, output), output);

您将看到它首先找到 View ,然后将 View 呈现到响应输出流。

关于.net - IActionFilter 与 IResultFilter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22187076/

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