我想要一个像
这样的网址/foo/bar/1.2.3
映射到某个操作
public void Get(string barValue, string version)
在名为FooController的控制器中。
我定义了以下路线
config.Routes.MapHttpRoute(
name: "FooRoute",
routeTemplate: "foo/{barValue}/{version}",
defaults: new { controller = "Foo", action = "Get" }
);
适用于foo/bar/121
或/foo/bar/qwerty
但适用于/foo/bar/1.2/
如何修复它以映射到第二个参数到字符串的任何内容?
答案 0 :(得分:0)
asp.net文件处理程序可以拦截具有点的请求,例如/foo/bar/1.2/。您可以通过添加
来禁用此行为<system.webServer>
<modules runAllManagedModulesForAllRequests="true" />
</system.webServer>
到你的web.config。