gpt4 book ai didi

c# - 如何在 MVC4 中禁用特定操作\ Controller 的全局属性

转载 作者:太空宇宙 更新时间:2023-11-03 21:49:56 25 4
gpt4 key购买 nike

我在全局过滤器中注册了一个属性。我希望它被禁用 2 个操作。我该怎么做?

最佳答案

有几种方法可以解决这个问题:

  1. 如果您可以控制操作过滤器的代码,您可以修改它以测试 Controller 操作是否装饰有一些自定义标记属性(您将创建)并且如果是则不要运行。然后,您将使用此标记属性装饰 2 个 Controller 操作。
  2. 如果您无法控制此属性的代码,您可以通过实现 IFilterProvider 来编写自定义过滤器提供程序。界面和内部 GetFilters您将需要实现的方法测试 Controller 操作是否装饰有一些自定义标记属性并且不在结果中包含您的全局过滤器。然后不要将过滤器注册为全局操作过滤器,而是注册您的自定义过滤器提供程序。过滤器提供程序经常用于向 Action 过滤器提供依赖注入(inject)。例如这里的 an article它用 StructureMap 详细说明了这一点。

关于c# - 如何在 MVC4 中禁用特定操作\ Controller 的全局属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15068347/

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