我有以下网址
Call/GetAudio/f9715595-a540-4add-8419-f9cdf906c7ec.mp3
现在问题是上面的.mp3文件实际上并不存在,而是我希望它转到" CallController"," GetAudio"然后将函数返回到FileResult。
我想我需要在global.asax中为此配置一些路由,这是否可以实现?
基本上我希望所有.mp3文件都通过路由。
答案 0 :(得分:1)
无论扩展名如何,所有路径都将通过路由 (假设IIS已正确配置为使用ASP.Net作为通配符处理程序)
做一个正常的路线。
请注意,没有理由在网址中加入.mp3
;只需确保在响应中包含适当的Content-Type
,无论URL如何,都应该这样做。
答案 1 :(得分:0)
这是一个类似的答案,只是它提供图像而不是音频文件,但原则是相同的 Can an ASP.NET MVC controller return an Image?
只需创建一个为MP3提供服务的Controller Action。然后您可以删除.mp3文件扩展名,因为控制器将只提供mp3。您的路由将是正常路由{Controller}/{Action}/{id}