问题标签 [asp.net-mvc-filters]

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 投票
2 回答
228 浏览

asp.net-mvc - 获取动作局部变量名和值 OnException 自定义过滤器

想要将 action 的变量值检索到自定义过滤器中

控制器 :

0 投票
1 回答
2072 浏览

asp.net-core - 自定义内容类型验证过滤器?

我想实现自定义 Content-Type 验证过滤器,以便可以提供 415 Unsupported Media Type 上的自定义错误模型。

像这样的东西:

问题是 MVC 管道似乎在执行任何自定义过滤器之前“捕获”了不受支持或无效的 Content-Type 值。即使是“application/xml”内容类型也会被拒绝。

这将在哪里配置?

我的 MVC 配置仅包含以下内容:

0 投票
2 回答
457 浏览

c# - ASP.Net Identity 2 - 为什么我的过滤器不起作用?

我尝试创建一个简单的过滤器来查看用户是否处于称为“系统管理员”的角色中,基本上是必须做的简写[Authorize(Roles = "System Administrator")]。我认为这会相当简单,但我对 MVC 也很陌生,所以也许我忽略了一些东西。

这是我的代码:

有人可以建议我哪里出错了吗?如果此人不是系统管理员,它会指导他们到Home/NoPermissions.

谢谢!

0 投票
1 回答
247 浏览

asp.net-mvc - MVC 页面上的压缩过滤器不起作用

我有一个 MVC5 Web 应用程序。我在此站点的控制器上使用了压缩过滤器

一切正常,但看起来我的页面仍然没有压缩。我使用 YSlow Chrome 扩展程序来检查我的页面,但它报告说我的页面上没有应用 GZip 压缩。我正在使用 IIS Express 在 VS 2015(调试模式)中测试我的 Web 应用程序。

难道我做错了什么?还是 YSlow 扩展是错误的?

0 投票
1 回答
2445 浏览

asp.net - ASP.NET。如何修改返回的 JSON (actionfilter)

我们有一个 ASP.NET 应用程序。我们无法编辑控制器的源代码。但是我们可以实现ActionFilter。

我们的控制器操作方法之一返回 JSON。是否可以在 ActionFilter 中对其进行修改?我们需要为返回的对象再添加一个属性。

也许,还有其他方法可以实现它?

0 投票
0 回答
618 浏览

c# - HandleUnauthorizedRequest 用于部分视图重定向并在页面底部添加新视图

标题中有点难以解释。基本上我有一个具有共享视图的 MVC 应用程序。共享视图是标题,然后我根据用户选择的选项卡加载视图。

我的问题如下:

封闭的视图有一个网格,用户可以单击该网格并从中获取详细信息。详细信息页面是部分视图。我正在尝试应用 MVC 安全过滤器并在会话到期时重定向到登录页面。我有一个覆盖 HandleUnauthorizedRequest 的自定义类。

我的主要课程代码:

主视图和局部视图

重定向在部分视图下加载。尝试解决此问题以使其仅加载到主视图上。

我注意到该视图正在嵌入到主视图中。重定向被插入页眉和页脚之间。

0 投票
1 回答
1367 浏览

asp.net-mvc - 自定义错误页面使用过滤器动作 mvc

我的应用程序使用MVC4Entity Framework 6。我希望自定义操作在发生错误时返回页面错误(500、404、403),使用 MVC 上的过滤器操作。

目前,我正在使用Application_Error文件Global.asax中的方法来返回页面错误,但是当从 AJAX 调用操作时它不起作用。

前任:

这是页面

这是 AJAX 调用后返回的视图

0 投票
2 回答
903 浏览

asp.net-mvc - MVC 过滤器动作重定向到无限循环

我正在尝试创建过滤器,过滤器应该检查角色(不是 asp .NET 成员资格或身份,而是我自己),我希望限制所有控制器操作(以下称为“AuthController”)从低-角色级别的用户。

在我的过滤条件中,我将限制用户删除到主页。

当我在 AuthController 中删除 Ajax 中的高级角色时会出现问题然后我的部分视图将我带到主页。

有没有一种优雅的方法来避免这种情况?

过滤器:

0 投票
1 回答
99 浏览

c# - 使用 MVC 过滤器的国际化问题

我有一个带有本地化资源文件(Messages.resx(for pt)、Messages.es.resx 和 Messages.en.resx)的 .NET 4.5.2 应用程序。

MVC 过滤器根据客户端语言设置线程文化。

我已经在一个有 3 台服务器的农场上发布了,它工作了一段时间,然后突然以下行为开始了:

  • 其中一台服务器开始使用带有英文消息的 pt 文化响应请求。
  • 除此之外,未翻译成英文且仅在 Messages.resx 文件中的消息返回为空。
  • 如果客户端语言是 es,则服务器返回西班牙语消息。

我们更改了场服务器,这发生在 4 台不同的服务器上。

我试图在 AssemblyInfo 中包含 [assembly: NeutralResourcesLanguage("pt")] 但问题仍然存在。

谁能帮我解决这个问题?

0 投票
0 回答
45 浏览

c# - 如何在属性中封装行为以允许在每个用它装饰的方法的开头和结尾注入代码

我有 C# 类库,我想记录一些日志以进行性能检查,例如:

我有一个问题,我应该将这两行放在不同层的不同类中的大约 1300 个方法中,所以这将是一项虚拟工作,所以我考虑使用 AOP(PostSharp)或 JIT 在每个方法的运行时注入代码辅助工具我也想到了依赖注入中使用的代码生成器工具,但所有这些可能都不能满足我的项目需求。

我考虑将行为封装在 [LogPerformance] 之类的属性中,然后使用此属性装饰我需要的所有方法,如下所示:

并且此属性将在带有它标记的每个方法的开头和结尾注入日志记录。

我知道在 MVC 过滤器中这样做很容易,但我现在正在处理业务逻辑层(类库),所以这是一种允许我这样做的方法吗?

此外,通过继承 Attribute 类在 .NET 中创建属性的方式主要用于添加编译到程序中的元数据。属性本身不会向类、属性或模块添加任何功能,只是数据。那么有没有一种方法可以让我像 ASP.NET MVC 中的过滤器一样使用它来添加行为而不仅仅是元数据?