Impede que o manipulador de arquivos estáticos intercepte o URL do tipo de arquivo

Na minha aplicação web eu tenho uma rota que se parece com isso:

routeCollection.MapRoute(
    "AdfsMetadata",                                                // name
    "FederationMetadata/2007-06/FederationMetadata.xml",           // url
    new { controller = "AdfsController", action = "MetaData" });   // defaults

A idéia por trás dessa rota era trabalhar melhor com o servidor Microsoft AD FS (2.0+) que procura metadados do AD FS neste ponto quando você especifica apenas um nome de host. Com MVC3 tudo funcionou bem. Mas nós atualizamos o projeto para MVC4 recentemente e agora a chamada para este URL resulta em um 404, o manipulador mencionado na página de erro éStaticFile e o caminho físico éD:\path\to\my\project\FederationMetadata\2007-06\FederationMetadata.xml. Eu suponho que MVC ou ASP.NET "pensa" que deve ser um pedido de um arquivo estático e procura o arquivo, mas não é um arquivo. Os dados são gerados dinamicamente - é por isso que roteei o URL para uma ação do controlador. O problema é que mesmo o Depurador de Rota por Phil Haack não funciona. É apenas um 404 sem mais informações, além de que o IIS tentou acessar um arquivo físico que não está lá.

Alguém tem uma solução para isso? Eu só quero que esta URL seja roteada para uma ação do controlador.

P.S .: eu sounão 100% Certifique-se de que a causa foi a atualização para o MVC4, foi apenas um palpite porque o erro ocorreu aproximadamente no mesmo tempo que o upgrade, e a mesma rota funciona em outro projeto que ainda está usando o MVC3.

Editar:

Eu tenho um costumeControllerFactory que precisa do nome completo da classe (AdfsController ao invés deAdfs), então o sufixoController está correto neste caso.

questionAnswers(2)

yourAnswerToTheQuestion