首页 文章

MVC 3在线商店过滤产品

提问于
浏览
0

我正在使用asp mvc 3开发一个在线商店,我正在使用Razor视图 . 我是MVC的新手,我有一个关于过滤产品的问题 .

我的方法是:

  • 定义public PartialViewResult Filter()并将其包含在_Layout.cshtml中以在所有页面上呈现

  • 当用户提交过滤器表单时,向他显示符合规则的产品 . 对于这个我啊另一个动作公共ActionResult FilterResult(FilterModel模型)

问题:

  • 这种方法的问题是表单发帖,用户无法复制过滤网址以通过电子邮件发送 . 我想在网址中有参数 . 这可能使用mvc 3吗?或者我应该使用javascript来进行过滤器重定向?

  • 您是否了解过滤产品问题的更好,更优雅的方法?

2 回答

  • 0

    只需对表单使用GET方法,您将在URL中使用过滤器参数 .

    Example:

    有可能使用BeginForm帮助器:FormExtensions.BeginForm方法(HtmlHelper,String,String,FormMethod),用于提交到同一页面,它是:

    Html.BeginForm(null, null, FormMethod.Get)
    
  • 0

    您可以将表单方法更改为GET而不是POST . 我不确定您是否可以使用Html.BeginForm()帮助程序执行此操作,您可能需要不使用帮助程序或为其编写扩展名 . 这应该至少解决你的第一个问题 . 除非你有一些其他的路由规则 .

相关问题