关于asp.net mvc3 搜索功能地址的问题
我做了一个查询的功能。
我用string id,因为我要用默认的路由。
[ValidateInput(false)]
public ActionResult Search(string id)
{
}
==>>
如果我用post:
<form method="post" action="/tag/search/">
<input type="text" id="id" name="id" />
<input type="submit" value="查询" />
</form>
比如用户输入“你好”后,虽然能正常查询出数据,但是URL地址不会路由到 /tag/search/你好
如果我用get:
<form method="get" action="/tag/search/">
<input type="text" id="id" name="id" />
<input type="submit" value="查询" />
</form>
产生的URL地址是: /tag/search/?id=你好, 这时如果直接在地址栏中敲入/tag/search?id=你好 或者 /tag/search/你好 ,这样的都能访问,也都能取到数据,这样就造成一个内容多个地址的问题,对SEO不好。
我想实现的功能就是 /tag/search/你好 这样的URL
所以这个问题该怎么解决?
------解决方案--------------------在search路由里面判断 Request.QueryString["id"]==null 不为null跳404
------解决方案--------------------不好整,浏览器就是这么提交的,而且按照楼主的要求(SEO),用 js 修改表单提交地址没有啥意义