MVC Razor Routing .mp3 файлы - PullRequest
       21

MVC Razor Routing .mp3 файлы

1 голос
/ 14 ноября 2011

У меня следующий URL

Call/GetAudio/f9715595-a540-4add-8419-f9cdf906c7ec.mp3

Теперь проблема в том, что указанный выше файл .mp3 на самом деле не существует, скорее я хочу, чтобы он перешел к функции "CallController", "GetAudio", которая затем будет возвращать массив байтов в виде FileResult.

Я полагаю, мне нужно настроить некоторую маршрутизацию для этого в global.asax, это достижимо?

По сути, я хочу, чтобы все .mp3 файлы проходили маршрутизацию.

Ответы [ 2 ]

1 голос
/ 14 ноября 2011

Все пути будут проходить через маршрутизацию, независимо от расширения.
(при условии, что IIS правильно настроен для использования ASP.Net в качестве обработчика подстановочных знаков)

Просто создайте нормальный маршрут.

Обратите внимание, что нет причин для включения .mp3 в URL;просто убедитесь, что в ответ включен соответствующий Content-Type, что вы должны делать независимо от URL.

0 голосов
/ 14 ноября 2011

Вот аналогичный ответ, только он обслуживает изображения вместо аудиофайлов, однако принципы те же.
Может ли контроллер ASP.NET MVC возвращать изображение?

Просто создайте действие контроллера, которое обслуживает MP3.Затем вы можете удалить расширение .mp3, поскольку контроллер будет обслуживать только mp3.Ваш маршрут будет нормальным маршрутом {Controller}/{Action}/{id}

...