MVC4: ¿Hay alguna forma de enrutar la raíz a una página html sin procesar "normal"?

Tengo una aplicación MVC4, pero la uso principalmente para las partes WebAPI. Quiero tener un archivo "HTML antiguo" enviado al usuario (que luego utilizará KnockoutJS o KendoUI para extraer JSON de los controladores webapi).

Sé que puedo hacerlo:

routes.IgnoreRoute("{page}.html");

Y luego, si navego a "localhost / index.html" lo hace con éxito, simplemente devuelve mi página .html. Sin embargo, realmente quiero asignar la ruta "raíz" predeterminada "localhost /" para devolver mi index.html.

Intenté esto:

routes.MapPageRoute("root", "", "~/index.html");

pero que arroja el error:

No hay ningún proveedor de compilación registrado para la extensión '.html'. Puede registrar uno en la sección <compilación> <buildProviders> en machine.config o web.config. Asegúrese de que tenga un atributo BuildProviderAppliesToAttribute que incluya el valor 'Web' o 'Todos'.

¿Alguien tiene alguna idea sobre cómo puedo hacer que esto funcione? Podría simplemente golpear un controlador predeterminado que devuelva una página html simple, pero parece una exageración pasar por toda la pila ASP.NET una vez para la página HTML, que luego llama a una URL de WebAPI para volver a la pila ASP.NET para obtener algunos datos JSON para el modelo de la página.

Básicamente, solo quiero "omitir" todas las tuberías de MVC y que IIS me envíe la página html, como si no fuera una aplicación ASP.NET, o al menos hago el menor procesamiento posible.

Respuestas a la pregunta(1)

Su respuesta a la pregunta