c# - 如何忽略自定义属性中方法的执行?
问题描述
当方法不是从 ajax 执行时,我什么都不用做。我知道如何检测 ajax 请求,但我不知道我应该返回什么来忽略。
public class AjaxOnlyAttribute : ActionFilterAttribute
{
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
if (!filterContext.HttpContext.Request.IsAjaxRequest())
{
filterContext.Result = ???;
}
}
}
[AjaxOnly]
public async Task<ActionResult> AjaxOnlyMethod()
{
//This is method should be ignore if not ajax request
}
解决方案
试试这个,我认为您可以重定向到其他一些操作方法,例如如果请求是 Ajax,则返回错误视图的方法
喜欢
filterContext.Result = new RedirectToRouteResult(
new RouteValueDictionary(new { action = "SomeOtherActionMethodName" }));
推荐阅读
- go - 并行执行 DynamoDB 查询(全局二级索引的 BatchGetItems)
- android - 在微调器选择中使用加载器重新加载游标
- sql-server - 在将动态列转置为行时连接列中的多行
- java - 字符串的额外 java 输入验证
- c++ - 具有十六进制值的 Sscanf
- neo4j - 如何使用 Neo4j 为字符串生成唯一的哈希码?
- java - 在 Install4j 中用 AdoptOpenJDK 替换 Oracle Java
- xml - XML 到 xQuery,用“”替换空节点或缺失节点
- python - SQLALchemy ORM 查询需要很长时间才能运行 - 子查询的变化非常轻微
- c# - 在数据网格中显示不带换行符