我有一个MVC4应用程序,但我主要使用它的的WebAPI部分。 我想有发回给用户(然后将使用KnockoutJS或KendoUI从控制器的WebAPI拉JSON)一个“普通的老HTML”文件。
我知道我能做到这一点:
routes.IgnoreRoute("{page}.html");
然后,如果我浏览到“本地主机/ index.html的”它不只是成功返回我的.html页面。 可是,我真的要地图“根”默认路径“本地主机/”返回我的index.html。
我尝试这样做:
routes.MapPageRoute("root", "", "~/index.html");
但引发错误:
没有为扩展名没有注册的生成提供“的.html”。 可以注册一个在machine.config中或web.config中的<汇编> <buildProviders>部分。 请确保有一个BuildProviderAppliesToAttribute属性包括值“网络”或“全部”。
任何人对我怎样才能使这项工作任何想法? 我刚打的是返回一个普通的HTML页面默认的控制器,但它似乎是矫枉过正要经过整个ASP.NET堆栈曾经为HTML页面,然后只需调用的WebAPI URL通过ASP.NET堆回去以获取页面的模型的一些JSON数据。
我基本上只是想“跳过”的所有MVC管道和具有IIS送我回的HTML页面,就好像它是不是一个ASP.NET应用程序,或者至少要做到尽可能少的处理成为可能。