问题标签 [custom-action-filter]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
483 浏览

asp.net-mvc-4 - 使用 ViewData 将请求的 URL 发送到 View 以获取超链接,URL 截断参数

我正在使用一个过滤器来检查用户到达网站时的浏览器/版本。如果他们使用不受支持的浏览器,我会将他们打算访问的 URL 保存到名为“RequestedURL”的 ViewData 中,并重定向到一个视图,告诉他们他们的浏览器是旧的。此视图使用户能够通过单击链接继续操作。此链接的 URL 由过滤器中设置的“RequestedUrl”的 ViewData 属性填充。

筛选:

查看对 ViewData 的引用:

大多数网址都可以正常工作。当用户输入一个包含参数的 URL 时,问题就出现了。例如:

如果用户输入的 Url 是“../Controller/Foo/providerkey”,则在视图中填充的 Url 是“Controller/Foo”,其中缺少访问页面所需的参数。

如何确保视图中的 URL 是用户最初输入的整个 URL?

0 投票
1 回答
1364 浏览

nhibernate - ASP.NET Web API - 如何在自定义 MediaTypeFormatter 完成之前保持会话活动?

我有一个 ASP.Net Web API 项目。我在这个项目中使用 NHibernate;Fluent NHibernate 是具体的。我正在使用自定义 ActionFilterAttribute 处理 NHib 会话管理。它看起来像这样:

这很适合我的需求。但是,我最近添加了一个自定义 JSON.NET MediaTypeFormatter 来格式化我的操作生成的 JSON。我遇到的问题是我的 ActionFilter OnActionExecuted() 方法在 MediaTypeFormatter 的 WriteToStreamAsync 可以完成工作之前被调用。结果是延迟加载的(问题)集合现在不可用,因为会话已关闭。处理这个问题的最佳方法是什么?我应该删除 ActionFilter 的 OnActionExecuted 方法并在 MediaTypeFormatter 中关闭我的会话吗?

谢谢!!

0 投票
2 回答
2216 浏览

asp.net-mvc - ASP.NET MVC - 在过滤器操作中设置的 RouteData 未绑定到操作方法参数

我有一个动作过滤器(除其他外),将内容添加到 RouteData。但是,我的操作方法中的参数并未获取该值。任何想法为什么?

动作过滤器:

行动方法:

请注意,我的操作方法中的以下行确实返回了保存在操作过滤器中的数据:

有谁知道为什么?

0 投票
1 回答
109 浏览

asp.net-mvc-3 - 可以从 mvc3 中的操作过滤器访问参数吗?

我在我的 mvc 3 Web 应用程序中有一个自定义操作过滤器,它在数据库上执行日志,我想获得有关正在访问用户的操作的更多信息,所以我现在有这个代码:

我想做这样的事情:

那可能吗?我已经看到在动作过滤器中我可以通过他的键访问该参数,但在这种情况下......我有一个复杂的对象而不是一个简单的 id。

0 投票
1 回答
1120 浏览

jquery - ASP.NET MVC 4 ajax 角色库授权返回错误 500

嗨,我有以下过滤器属性,可以实现控制器角色授权:

在我的客户端 ajax 方面,我有:

它总是会产生错误,错误是 500。所以我不知道我做错了什么,因为我只想获取 Data.errorMessage 并将其显示在警报窗口中。

关于为什么我收到服务器错误 500 的任何线索?

0 投票
4 回答
9477 浏览

asp.net-mvc - 如何从 AuthorizationContext 获取 MVC Action 参数?

我目前正在尝试编写自定义身份验证过滤器,我需要访问作为参数传递给过滤器中操作的 dto。可以说我有这样的动作

我需要根据 profiledto 对象内部的一些属性进行身份验证。

我想知道如何从 AuthorizationContext 中获取我的过滤器中的这个对象。

0 投票
3 回答
2397 浏览

asp.net - 从控制器的 HTTPGET 方法将动态变量传递给自定义操作过滤器

我有一个 MVC 应用程序,其中控制器 A 调用内部 HTTPGET 方法(由控制器 B 处理)。A有观点,B没有。

控制器 B 中的 HTTPGET 如下所示:

我想在我的 B 控制器上使用一个动作过滤器,它为我记录错误。我确实需要在记录时使用 HTTP GET 传递的参数。如何将 accessToken 和 UID 传递给操作过滤器以便我可以记录它。

我正在寻找的是这样的:控制器应该是这样的

而动作过滤器应该做日志记录

0 投票
1 回答
491 浏览

c# - 如何使用 StructureMap 将属性注入自定义 ActionFilterAttribute?

注入在我的解决方案中正常工作,但海关 ActionFilterAttribute 除外。
这是一个示例:我想使用注入将属性 UserModel 填充到以下 ActionFilterAttribute 中。

全球.asax.cs:

过滤器配置.cs:

0 投票
1 回答
2897 浏览

asp.net-mvc-3 - 如何开发特定的动作过滤器控制器或动作方法

我试图开发一个自定义操作过滤器来检查 cookie 是否启用。如果未启用 cookie,则将使用重定向到特定的错误页面。这是我的代码。

现在我正在使用喜欢

由于缺乏良好的知识,我无法为 cookie 启用或禁用开发属性驱动检查。

我想以这样的方式开发代码,因此我不应该传递任何控制器名称或动作名称。我喜欢使用类似的代码

我不会提供任何控制器名称或操作名称。只是指导我在我的代码中需要更改的内容。谢谢

0 投票
1 回答
258 浏览

asp.net-mvc - 提高我的自定义授权模块的性能和可扩展性

我有一个授权要求,我的安全角色基于操作方法,使用默认的 asp.net mvc 授权无法实现。所以我创建了以下操作过滤器,以实现我的自定义授权要求:-

它正在调用以下存储库方法:-

我在我的控制器类中调用动作过滤器如下:-

但我有以下担忧:-

  1. 在我的存储库中,我将检索所有用户和组(调用 .Tolist() 时),然后检查当前登录用户是否在这些值内。在处理大量用户时,哪个不是很可扩展?

  2. 每次用户调用操作方法时,都会运行相同的安全代码(当然,理想情况下,用户权限可能会在用户会话期间发生变化),,这可能会导致性能问题?

那么,考虑到这两个问题,谁能告诉我如何改进我目前的实施?谢谢