【发布时间】:2017-06-28 14:13:27
【问题描述】:
我们有一个 ASP.NET 应用程序。我们无法编辑控制器的源代码。但是我们可以实现 ActionFilter。
我们的控制器操作方法之一返回 JSON。是否可以在 ActionFilter 中对其进行修改?我们需要为返回的对象再添加一个属性。
也许,还有其他方法可以实现它?
【问题讨论】:
-
我认为理论上
OnResultExecuted应该在 ActionFilter 中执行您想要的操作。它可以通过 context.Result (msdn.microsoft.com/en-us/library/…) 访问结果,这应该允许您根据需要操作它。这听起来不像是一种 nice 的方法,但是如果您不能更改控制器并且可能无法更改控制器调用的任何工厂,那么这听起来像是您唯一的选择。我自己没有做过,所以不能肯定它会起作用...... -
您是如何获得 JSON 的?请向我们展示代码,以便我们提供帮助。
-
你能不能只创建一个新动作,调用旧动作然后添加字段并传递新结果?
标签: asp.net json asp.net-mvc asp.net-mvc-filters