pages net mvc from form data beginform asp asp.net asp.net-mvc razor

asp.net - net - Usando HTML en lugar de csHtml



razor form asp net mvc (5)

Añadir un archivo. Renombrarlo F2 en explorador de soluciones.

Quiero usar la página HTML pura en lugar de cshtml con MVC .net. Pero cuando agrego vista haciendo clic con el botón derecho en Índice, solo puedo ver dos opciones.

public class HomeController : Controller { // // GET: /Home/ public ActionResult Index() { return View(); }}

  1. Cshtml (Razor)
  2. Aspx

Seguí ¿Puedo servir archivos .html utilizando Razor como si fueran archivos .cshtml sin cambiar la extensión de todas mis páginas?

Foro pero todavía no ayuda. Todavía no veo una opción para agregar html en lugar de cshtml

También intenté agregar la página html directamente a la carpeta de vista, pero no sé cómo apuntar esa vista desde la función de mi controlador.

Reemplazar Index.cshtml con Index.html me dio este error

The view ''Index'' or its master was not found or no view engine supports the searched locations. The following locations were searched: ~/Views/Home/Index.aspx ~/Views/Home/Index.ascx ~/Views/Shared/Index.aspx ~/Views/Shared/Index.ascx ~/Views/Home/Index.cshtml ~/Views/Home/Index.vbhtml ~/Views/Shared/Index.cshtml ~/Views/Shared/Index.vbhtml


Para renderizar un archivo HTML plano puede usar

return new FilePathResult(HtmlPath, "text/html");

donde HtmlPath es

Server.MapPath(string.Format("~/Views/{0}/{1}.html", YourControllerName, YourHtmlfileName))


Puede crear una Vista con un archivo cshtml normal, agregarlo al controlador y, en la Vista misma, solo use HTML puro y agregue lo siguiente en la parte superior:

@{ Layout = null; }

De esta manera, utiliza un archivo cshtml que no usa su archivo de diseño maestro. Y solo sirve cualquier html que pongas en él.


Si hace clic con el botón derecho en la carpeta Content , puede seleccionar ''Agregar nuevo elemento ...''. Luego puede seleccionar ''Web'' en el árbol de la izquierda y elegir la ''Página HTML'' de la derecha.

Esto debería agregarle una página HTML.


Si se trata de un archivo html estático, no es necesario que apunte el controlador a él, ya que IIS puede servirlos bien. Agregue un archivo html a su proyecto (en cualquier lugar pero NO en la carpeta de vistas), y apunte su navegador a ese archivo.