在我的应用程序中,需要通过所有页面传递特定参数(如果存在)。
我能做到这一点的最好方法是什么?每当我执行 GET 或 POST 申请时,都会调用一些函数,我可以在其中验证参数是否存在并保持它?
在我的应用程序中,需要通过所有页面传递特定参数(如果存在)。
我能做到这一点的最好方法是什么?每当我执行 GET 或 POST 申请时,都会调用一些函数,我可以在其中验证参数是否存在并保持它?
创建一个如下所示的操作过滤器。
public sealed class ScaffoldActionFilter : ActionFilterAttribute
{
public override void OnActionExecuted(ActionExecutedContext filterContext)
{
var model = filterContext.Controller.ViewData.Model as PageModelBase;
// Whatever you want to do.
model.myParam = "Im available in all views";
}
}
接下来注册它以在每个请求上运行。查看 app_start/filterconfig.cs ,它就像这样。
filters.Add(new ScaffoldActionFilter());
现在只需从每个视图返回标准的 pagebasemodel 或派生类型,您就拥有了您想要的。