MVC本地方式从文本输入形成URL

时间:2014-08-06 06:26:59

标签: c# asp.net-mvc-5

在ASP.NET MVC中,我有一个路由/search/{what}/{where}/{pagenr}/

在我的主页上我有2个文本输入,我希望用户输入类似的内容:

  

text1:apples text2:西班牙。

如果我使用FormMethod.Post,这可以正常工作,但我没有得到正确的Url。我只是得/搜索。 在其他一些帖子中有人提到使用FormMethod.Get,但后来我以查询字符串形式获取我发布的值,这不是我想要的。

有谁能告诉我我是如何从输入表单转到符合我的路线的网址?

当然我可以用javascript做到这一点。但我认为应该有更好的MVC方式来做到这一点?

2 个答案:

答案 0 :(得分:1)

如果您不想使用javascript,则需要执行常规http帖子,然后在操作中重定向

return RedirectToAction("Search", new { What = "..", Where = "..", Pagenr = ".." });

请注意,如果你使用ajax表示这不会起作用,我建议你做一个javascript导航。

答案 1 :(得分:0)

According to W3C,GET表格来使用查询字符串(以?开头,并以&分隔)。

将查询字符串转换为url段的唯一方法是JavaScript。

或者您可以忘记细分的构建路线。