¿Cómo crear contenidos sin vistas?
¿Cómo crear contenidos sin vistas?
Como bien sabemos una vista siempre irá asociada a un controlador, el cual se encargará de administrar las peticiones que nosotros ejecutemos y que a su vez mostrará contenidos.
Aunque técnicamente el mostrar contenidos sin vistas es una mala praxis, se podría presentar la necesidad de usarla.
Existe diferentes formas de mostrar contenidos sin vistas:
o Content: permite devolver código HTML directamente para que el explorador Web lo interprete.
o File: permite devolver tipos de archivo, ya sea para descargar o para visualizar su contenido si el explorador Web lo soporta.
o JavaScript: permite devolver código JavaScript para ser invocado desde una vista.
o JSon: Envía datos JSon a la vista desde el controlador.
En el siguiente ejemplo trabajaremos Contenido Content:
Contenido Content
Vamos a realizar una página que nos permita introducir una URL de un video de Youtube en una caja de texto y que al pinchar el botón “Mostrar Video”
y que automáticamente nos lleve al video
Para eso crearemos una zona nueva llamada “ProyectoContenido”
Una vez creado el proyecto Contenido.
Agregamos una zona Contenido.
Dentro de Contenido crearemos una vista llamada VideosYoutube
En la vista VideoYoutube agregamos el siguiente desarrollo:
@{
ViewBag.Title = «VideosYoutube»;
}
Videos de Youtube
<form method=»post»>
<div class=»form-group»>
<label>Introduzca URL del vídeo
</label>
<input class=»form-control» name=»video» type=»text» placeholder=»Url Youtube» >
<button class=»btn-success» type=»submit»>
Mostrar vídeo
</button>
</div>
</form>
Creamos el Contrador: ContenidoController
public ActionResult VideosYoutube()
{
return View();
}
[HttpPost]
public ActionResult VideosYoutube(String video)
{
//Content devuelve código HTML
//interpretado por el navegador.
//https://www.youtube.com/watch?v=E4-zo5kH_OM
int posicion = video.IndexOf("v=");
String idvideo = video.Substring(posicion + 2);
return Content
("<iframe width='560' height='315' src='https://www.youtube.com/embed/" + idvideo + "' frameborder='0' allowfullscreen></iframe>");
Descripción: Qué soluciona/para qué te ayuda este videotutorial (140 caracteres máximo)
Autor/a: María del Carmen Rojas Ríos
Curso: Microsoft MCSD Web Applications + SharePoint Apps
Centro: Tajamar
Año académico: 2016-2017