J'essaie d'utiliser ASP.NET WebPages pour donner un sens à un site existant qui utilise des fichiers statiques .html (environ 500 d'entre eux). Malheureusement, ma personne SEO exige que le site conserve son répertoire/nom de fichier existant, donc j'ai besoin d'utiliser .html.ASP.NET WebPages utilise l'extension html
Après avoir trouvé this example, j'ai essayé d'ajouter l'extension dans web.config
sous compilation/buildProviders/
que:
<add extension=".html" type="System.Web.WebPages.Razor.RazorBuildProvider"/>
et en ajoutant une Assemblée ainsi:
<add assembly="System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
Cela ne rend pas la encore page. C'est simplement sortie comme source. J'ai aussi créé un Global.asax
à la racine du projet et a ajouté ce sous Application_Start()
:
System.Web.Razor.RazorCodeLanguage.Languages.Add(
"html", new System.Web.Razor.CSharpRazorCodeLanguage());
System.Web.WebPages.WebPageHttpHandler.RegisterExtension("html");
avait encore aucun effet. Malheureusement, je dessine un blanc sur Google.
Voulez-vous dire que vous voulez mapper les demandes de * .html .cshtml fichiers, ou vous essayez d'ajouter du code Razor aux fichiers .html existants et voulez traité par ASP.NET? –
Je veux que les fichiers '.html' soient automagiquement analysés par Razor. Par défaut, cette action est effectuée sur.fichiers cshtml. 90% de ce que je recherche est '@ Layout' et' @ RenderPage' (pour inclure d'autres pages). –