MVC4 - есть ли способ направить корень на «обычную» необработанную HTML-страницу?
У меня есть приложение MVC4, но я в основном использую его для частей WebAPI. Я хочу иметь & quot; старый & quot; HTML & quot; файл отправляется обратно пользователю (который затем использует KnockoutJS или KendoUI для извлечения JSON из контроллеров webapi).
Я знаю, что я могу сделать это:
routes.IgnoreRoute("{page}.html");
И затем, если я перейду к & quot; localhost / index.html & quot; он успешно только возвращает мою страницу .html. Однако я очень хочу отобразить & quot; root & quot; путь по умолчанию & quot; localhost / & quot; вернуть мой index.html.
Я попробовал это:
routes.MapPageRoute("root", "", "~/index.html");
но это выдает ошибку:
There is no build provider registered for the extension '.html'. You can register one in the <compilation><buildProviders> section in machine.config or web.config. Make sure is has a BuildProviderAppliesToAttribute attribute which includes the value 'Web' or 'All'.
У кого-нибудь есть идеи о том, как я могу заставить это работать? Я мог бы просто нажать на контроллер по умолчанию, который возвращает простую HTML-страницу, но кажется чрезмерным, чтобы пройти через весь стек ASP.NET один раз для страницы HTML, которая затем просто вызывает URL-адрес WebAPI, чтобы вернуться через стек ASP.NET чтобы получить некоторые данные JSON для модели страницы.
Я просто хочу "пропустить" вся система MVC и IIS отправляют мне обратно html-страницу, как если бы это было не приложение ASP.NET, или, по крайней мере, выполняли как можно меньше обработки.