我正在 ASP.NET MVC3 中创建一个搜索页面。
调用动作的 url 是:
http://mydomain/Search?q=searchterm
如果我搜索关键字“web.config”,它工作正常:
http://mydomain/Search?q=web.config
但现在,我希望网址是:
http://mydomain/Search/searchterm
我已经通过将路由添加到 global.asax 来完成此操作,但是当我搜索“web.config”时,就像http://mydomain/Search/web.config
服务器将结束我的请求一样,因为它认为我正在请求搜索目录中的物理 web.config 文件。
无论如何让asp.net将url“search/{q}”中的{q}视为搜索操作的参数,而不是文件的请求?