0

我在 VS2010/.NET 4/MVC3 中工作的路线似乎在 VS2012 和 .NET 4.5 中被破坏(尽管仍然使用 MVC3)。

以前我有这样的路线:-

routes.MapRoute("TMS", "{controller}/{action}/{id}.{extension}");

已成功匹配 uri:

/Test/Test/tile.png

它调用了以下Test操作TestController:-

public ActionResult Test(string id, string extension)

使用 id = "tile" 和 extension="png"。

然而,在 VS2012 的一个相同项目中,尽管使用 .NET 4.5,但由于路由不匹配,我得到了 404。将句点更改为路由中的 / 和 uri 会导致路由匹配并调用操作,但这还不够好 - 我需要在路由中设置那个句点,就像以前工作的那样(因为这个动作是设计的将磁贴作为 TMS 服务器提供服务;URL 格式是一种 API)。

有没有人遇到过这样的问题?

<httpRuntime relaxedUrlToFileSystemMapping="true"/>根本没有帮助。

4

1 回答 1

0

我想知道您正在测试的 2 个环境之间的 Web 服务器设置是否不同:如果 .png 扩展名未设置为由 MVC 处理,或者选中了“验证物理文件是否存在”选项。

于 2012-06-12T15:20:08.020 回答