Asp.net mvc 使用ASP.NET MVC4 WebGrid排序时如何保留表单值
我正在MVC4中构建一个搜索页面,其中包含一个过滤器表单和一个webgrid帮助器来显示数据。过滤和排序都可以正常工作,但当我单击一列进行排序时,它会使用带有排序参数的GET controller函数重新加载页面的初始版本,从而丢失过滤器设置。我真的希望它将表单重新提交给POST控制器函数,以便使用和重新填充过滤器表单。对我来说,最好的方法是什么?这可能不是最优雅的解决方案,但它可以: 将模型添加到视图中的会话中:Asp.net mvc 使用ASP.NET MVC4 WebGrid排序时如何保留表单值,asp.net-mvc,sorting,filter,webgrid,Asp.net Mvc,Sorting,Filter,Webgrid,我正在MVC4中构建一个搜索页面,其中包含一个过滤器表单和一个webgrid帮助器来显示数据。过滤和排序都可以正常工作,但当我单击一列进行排序时,它会使用带有排序参数的GET controller函数重新加载页面的初始版本,从而丢失过滤器设置。我真的希望它将表单重新提交给POST控制器函数,以便使用和重新填充过滤器表单。对我来说,最好的方法是什么?这可能不是最优雅的解决方案,但它可以: 将模型添加到视图中的会话中: Session.Add( "Model", Model ); 然后,在控制器中
Session.Add( "Model", Model );
然后,在控制器中的索引GET Action或GET Action是什么,只需检查值并调用POST Action:
if ( Session[ "Model" ] != null )
this.Index( Session[ "Model" ] as MyModel );
相应地清理会话