# data[].attributes.body
Ventajas

Curva de aprendizaje y adaptación bastante corta

Centraliza las herramientas necesarias para poder desarrollar comodamente

Admite muchas extensiones de funcionalidad y configuración

Fácil instalación

Desventajas

Algunas funcionalidades pueden ser un poco limitadas pero tampoco era el objetivo de Microsoft construit otro IDE si para eso ya existe Visual Studio

Solo corre en Windows

# data[].attributes.attachment_link.readable_text
Con la aparición de WebMatrix, se presentó la sintaxis Razor para los sitios web, que posteriormente fue incorporada como motor de vistas en ASP.NET MVC. La principal diferencia de Razor con otras sintaxis/motores con más tradición dentro de ASP.NET es la facilidad y limpieza con la que se intercala código HTML y código de servidor.

Nota: Razor puede utilizarse para C# ( archivos . cshtml) o para vb ( archivos . vbhtml). En este artículo vamos a ver sólo la parte de cshtml

Además de revisar las principales características, os vamos a plantear un ejercicio donde tendréis que desarrollar un formulario en Razor.

¡Herramientas!

Para seguir el laboratorio y hacer el reto que os proponemos, necesitaras algunas herramientas, nada muy complicado, pero sin ellas va a ser difícil que lo sigas! :)

WebMatrix. WebMatrix es un pack de herramientas en una única descarga... editor, base de datos, servidor Web... que vale tanto para desarrollar, como para descargar e instalar conocidos paquetes web (WordPress, Joomla, motores de blog, screwturnwiki...)

Si surge cualquier duda o complicación, no dudes en añadir un comentario a este post o comentárnoslo por twitter a @esmsdn o en el hashtag

Muchos de los desarrolladores ASP.NET están acostumbrados a trabajar directamente con controles ASP.NET WebForms y en cuanto se menciona lo de mezclar código de presentación y lógica de negocio se llevan las manos a la cabeza y comienza una discusión sobre el antiguo ASP, el código spaghetti, las capas...

Dejemos claros algunos puntos

.NET no es ASP tradicional y no es comparable.

Si hay código de servidor mezclado con HTML, pero este código se dedica a temas de presentación y no a lidiar con el modelo ¿cuál es el problema?

Razor no es una verdad universal, es una opción más... hay diferentes motores de presentación para diferentes preferencias (asp.net, razor, spark....)

Razor, como una opción más, tiene escenarios donde puede tener ventajas, como por ejemplo desarrolladores nóveles que vengan de PHP, JSP, ASP o que sean nuevos al desarrollo web.

Tal y como hemos comentado al abrir el post, Razor es tan solo una sintaxis, y aunque ahora este también incluida como motor de vistas en MVC3, recordemos que nació con WebMatrix.

WebMatrix es una herramienta, más bien una serie de herramientas para facilitar el desarrollo y despliegue de aplicaciones web en diferentes lenguajes, tanto hechas por nosotros como las más utilizadas por la comunidad.

Pero solo con una sintaxis y herramientas no se crean aplicaciones, no? Hace falta un framework, plataforma unas APIs o ALGO a lo que llamar para realizar las tareas =) Ahí es donde entra PAGES.

Pages es un pequeño framework que se utiliza para desarrollar en Razor, incluye la funcionalidad necesaria para manejar formularios, acceder a BBDD, trabajar con plantillas, incorporar redes sociales, video, autenticación... así como un mecanismo de extensibilidad para crear nuestros propios módulos.

Aquí podéis encontrar más información relativa a la programación de ASP.NET Pages http://www.asp.net/webmatrix/tutorials/2-introduction-to-asp-net-web-programming-using-the-razor-syntax

Tradicionalmente, cuando vamos a incluir código en una página web, tenemos que utilizar algún tipo de secuencia de escape para indicar que el bloque se corresponde con código de servidor...

<? ?> <% %> <%= %> <%: %>... etcétera

Así, cuando tenemos que intercalar código de los dos tipos, empezamos a poner y quitar secuencias de escape. No es raro que nos olvidemos alguna secuencia de cierre sola y aparezca en la página, o que montemos un auténtico jeroglífico como resultado de un gran número de aperturas y cierres

Aunque sea un tronzo pequeño de código, es suficiente para que apreciemos que utilizando Razor, queda una estructura más limpia y legible, los únicos caracteres especiales que tenemos que tener en cuenta son la arroba @ y la apertura y cierre de llaves { }.

Como muchos ya habréis imaginado, la arroba es el carácter de escape para indicar código de servidor y las llaves marcan los bloques de código de más de una línea. Partiendo del ejemplo de código anterior, la versión Razor es:

Si nos fijamos en los colores del editor (estoy utilizando WebMatrix) vemos que automáticamente se detecta entre bloques de código y de html sin tener que indicarlo ( el H3 después de la llave del foreach por ejemplo)

Cada vez que queremos poner código de servidor, lo indicamos con la @ y listo! Vamos a ver que pasa con encadenamiento de strings, layouts, secuencias de escape....

Bloques

@ es la secuencia de escape para sentencias, pero si queremos poner un bloque de código, declaraciones de variables... hemos de utilizar las llaves y recordar utilizar el punto y coma ; para separar las sentencias.

Cadenas de caracteres

Una imagen vale más que mil palabras... ( atención a las secuencias de escape con la @ para los caracteres especiales \ y ")

Objetos frecuentes en el desarrollo web

Tendremos que trabajar con métodos de HTTP, peticiones, objetos de sesión, cookies... para lo que podemos acceder a los típicos objetos de Page, Request, Response...

Has visto que Razor es muy intuitivo, el reto consistirá en que crees un nuevo sitio web en webmatrix y añadas una página web que actúe como formulario de entrada de datos.

Una vez que el usuario entre los datos y haga click en enviar, la página deberá mostrarle esos datos

y si falta alguno deberá mostrar un mensaje de error.

Pistas: Esperamos que no tengas muy oxidado el uso de los <form> con tanto control de servidor ;)

http://www.asp.net/webmatrixtenemos mucha más información sobre cómo funciona Razor y ejercicios sobre los diferentes módulos

Solución: En unos días enlazaremos la solución desde este post.

No dudéis en dejar comentarios, dudas... en este post, estaremos monitorizándolo para responder cuanto antes.

Happy Hacking!

David Salgado - @davidsb - Technology Evangelist

PD -> Personalmente veo Razor + WebMatrix como una opción muy buena a la hora de dar los primeros pasos en el desarrollo web, es intuitivo y no tiene demasiadas complicaciones para instalarse y probar.

PD 2-> Y personalmente tb... es mi motor favorito en MVC... puede ser que no haya probado algún otro que tenéis en mente, pero teniendo en cuenta que al motor le llega el modelo, para mi, el equipo Razor + JQuery por ahora es imbatible :)

# data[].attributes.attachment_link.title
Reto Razor: Sintaxis de WebMatrix y vistas de ASP.NET MVC

# data[].attributes.attachment_link.description
Con la aparición de WebMatrix, se presentó la sintaxis Razor para los sitios web, que posteriormente fue incorporada como motor de vistas en ASP.NET MVC. La principal diferencia de Razor con otras sintaxis/motores con más tradición dentro de ASP.NET es la facilidad y limpieza con la que se intercala código HTML y código de...

# data[].attributes.body
Una herramienta ligera y sencilla de usar, orientada a la comunidad, para construir aplicaciones ASP.NET

Construida íntegramente usando el .NET Framework con lenguaje C#

Incluido con MSDE - Microsoft Data Engine (como una descarga separada)

Permite conectar a los desarrolladores a la comunidad ASP.NET

Ayudar a los desarrolladores a facilitar su opinión sobre nuevas características

Experimentar con nuevas ideas y posibilidades

# data[].attributes.body
WebMatrix es una estupenda forma de mejorar las habilidades con ASP.NET, el entorno web y familiarizarse con las herramientas, para más adelante migrar a Visual Studio .NET u otras herramientas mas sofisticadas

# data[].attributes.headline
Simulador en WebMatrix - Ventajas/Desventajas

# data[].attributes.subject
Simulador en WebMatrix - Ventajas/Desventajas

# data[].attributes.body
Ventajas:

Visualizar nuestra aplicación sin necesidad de contar con un dispositivo

Poder manipular la posición del simulador(landscape & portrait)

Tiempo óptimo de ejecución del simulador, ya que no tarda mucho en mostrarse

No requerimos de un SDK para su uso

Desventajas:

El simulador a veces deja de funcionar correctamente por lo que debemos reiniciar WebMatrix

No nos da una visualización 100% segura ( como el ejemplo que vimos)

# data[].attributes.attachment_link.title
WebMatrix: Armando dinámicamente tu sitio web con HTML5, PHP, MySQL

# data[].attributes.attachment_link.description
Peter Concha Regatto (@PeterConchaR) nos enseña como crear un sitio web dinámico con WebMatrix. Plantilla: http://sdrv.ms/VtAYKv

# data[].attributes.attachment_link.readable_text
Supongamos que quiero instalar WordPress en local en un PC con Windows 10, si bien es cierto que tengo muchas opciones, que si XAMPP que si WAMPP, que si IIS. Pero todas ellas necesitan de configuración y conocimientos especiales. La solución que os propongo es instalar WebMatrix 3 sobre Windows 10 y no tendremos que configurar nada solamente a mover el ratón para marcar las opciones y escoger una contraseña adecuada, aunque si vamos a trabajar en local, cualquiera nos sirve. También una vez instalado intentare recuperar una copia de seguridad (de un web del año 1998 que tenía por un cajón) de un web hecho con FrontPage98.
Me gustan los retos.

Lo primero y habitual bajarse el programa WebMatrix 3 de su página web, la página no está en español (esta traducida a trozos como puedes ver en la imagen:

es la misma crítica de siempre, cuando uno se adentra en la web de Microsoft, parece que el español no sea el idioma mas hablado en el mundo, pero bueno lo gratis, gratis es :-) . Dicho está, que podrían esforzarse en traducir todo el contenido, así los que no dominen el inglés podrían acceder él de forma sencilla y usar esta herramienta para desarrollo y mantenimiento de páginas web, aumentando la popularidad de la misma. Bueno, vamos al lío, aunque procuraremos que eso no sea un problema explicando como hacerlo paso a paso.

Descargar el instalador gratuito de Webmatrix 3 una vez descargado, vamos a descargas, buscamos el fichero descargado que es "webmatrixweb" y le damos con el botón derecho y ejecutamos como administrador.

Hacemos clic en instalar y seguimos los pasos y se instalará en unos segundos, en la siguiente ventana del Instalador de la "Plataforma web 5.0" hacemos clic en "Acepto" y se irá instalando todo el software necesario para que todo funcione correctamente. La ventaja de este sistema es que no tendremos que configurar nada y que podemos instalarlo sin tener conocimientos avanzados.

Una vez haya terminado la Instalación nos indicará todo el software instalado. Damos clic a finalizar y salir. En este punto hay que cerrar el programa del todo y volverlo a abrir.

Ahora ya tenemos WebMatrix 3 instalado en nuestro PC (más rápido y fácil que con XAMPP , WAMPP etc...)

Vamos a inicio programas "Microsoft WebMatrix" y hacemos clic. Lo primero que aparece es una opción a una prueba gratuita de Windows Azure en este caso le damos clic a "Ahora no" y ya estamos dentro de la aplicación, con las tres opciones de las otras versiones:

Damos clic en "Nuevo" y en "Galería de Aplicaciones" veremos toda la librería de aplicaciones que podríamos instalar en WebMatrix 3, para gestionar nuestra aplicación web.

En este caso seleccionaremos WordPress [en inglés], ya que por alguna razón el enlace a la versión en español no funciona.

Si en la imagen siguiente:

Escribimos " WordPress" aparecerán tres versiones en Inglés, Portugués y Español, pero como digo esta última no funciona, así que haremos clic para seleccionar la versión en Inglés y haremos clic en "Siguiente" (luego descubrirás que la versión que se instala es en Español), por lo que imagino que el lenguaje de WebMatrix 3 es el que determina el lenguaje de las aplicaciones que se instalan para funcionar en él.

Vemos en la imagen que WordPress en español no se ha descargado nunca, lleva "0" descargas.

Bueno le damos clic a "Siguiente", podemos rellenar antes la opción del "Nombre del Sitio" pero lo haremos después.

En la siguiente ventana nos indica que MySQL no está instalado ( que es el gestor de bases de datos que vamos a usar) y que hemos de introducir la contraseña que utilizaremos. Al ser en local vale cualquiera que recuerdes, no te compliques la vida, siempre puedes cambiarla mas adelante. O mejor dicho, por si en el futuro se te hace complicado cambiar la contraseña fácil por una difícil, en previsión, pon ahora una contraseña "muy fuerte", así si el día de mañana subes este web a Internet ya tendrás una contraseña potente :-) rellena los dos campos de la contraseña, con la misma en los dos, activa "Guardar mi contraseña" y clic en "Siguiente"

Hasta ahora solo hemos escrito la contraseña, eso si dos veces pero solo eso, no hemos tenido que configurar nada de nada. Los parámetros de la aplicación, son frases que se usan para encriptar datos, los dejaremos como están sin tocar. Sigo adelante:

Ahora vemos la ventana de Requisitos previos donde nos indica todos los aplicativos necesarios para que WordPress funcione en local:

WordPress

Web Deplyment Tool

Web Deploy

Conector MySQL/NET

MySQL Windows

Ahora no te asustes jajaja, dale a "Aceptar" con lo que aceptarás la instalación de todo el software anterior. (como he escrito antes, necesario para que todo funcione.)

Se descargaran e instalaran todas ellas y tu sin hacer nada jajaja, vivan las cosas fáciles. Cuando haya terminado el proceso de instalación, verás esta imagen:

En la que se observan 2 errores WordPress y MySQL Windows 5.1, pero tu ni caso jajaja, clic en "Aceptar" volvemos a la ventana de inicio de WebMatrix 3 y cerramos la aplicación con la X de arriba a la derecha de la ventana.

Y vuelta a empezar Vamos a inicio programas "Microsoft WebMatrix" y hacemos clic, cuando se abra la ventana de inicio, hacemos clic en "Mis sitios" y descubiremos que WordPress esta instalado, hacemos clic en la pestaña y se inciará la instalación, esta vez de WordPress. Porque todo este rollo de errores y reinicio, pues creo yo que porque el programa intenta instalarlo todo a la vez, cuando debería instalarlo en orden, osea el software conector primero y luego el WordPress, pero claro el software no solo instala el WordPress y debe estar preparado para instalar cualquiera de los necesarios segun el aplicativo usado, así que salir y entrar del programa tampoco es tanto :-) Una vez salgas y entres el WordPress funcionará perfectamente, apareciendo esta pantalla:

Anotamos "usuario y password", damos a "Aceptar" y automáticamente se abrirá el navegador Internet Explorer, en la pagina de nuestro https://localhost y allí escogeremos el lenguaje en el que queremos instalar WordPress y la proxima pantalla será la información final:

Titulo del web usuario(el que anteriormente anotabamos) y la contraseña de WordPress (esta es nueva y nos aparece de forma automática), ponemos un correo electrónico y marcamos la opción de "Disuadir a los motores de búsqueda de indexar este sitio" ya que es un web local.

Clic en "Instalar WordPress"

Rellenamos los campos que nos pide y ¡se acabo!

No es la intención de este artículo, mostrar todas las posibilidades de WebMatrix 3 sino simplemente mostrar la que nos interesaba, que era instalar WordPress en modo local en Windows 10, sin configurar nada absolutamente, y sin tener ningún conocimiento de informática, solamente moviendo el ratón. Todo se ha instalado de forma automatizada, sin ninguna configuración. Solamente el nombre de la Base de Datos, el usuario, la contraseña y el titulo de la web. Ahora ya podemos hacer practicas en nuestra web en local, cuando este a nuestro gusto, la exportamos a internet (aunque esto lo explicare en otro artículo, tampoco es complicado hacerlo) y ya está.

Ahora a posicionar la web, para que salga de las primeras en Google.

# data[].attributes.attachment_link.title
Instalar Wordpress en local con Windows 10 y Webmatrix3 * Molasoft

# data[].attributes.attachment_link.description
Supongamos que quiero instalar WordPress en local en un PC con Windows 10, si bien es cierto que tengo muchas opciones, que si XAMPP que si WAMPP, que si IIS. Pero todas ellas necesitan de configuración y conocimientos especiales. La solución que os propongo es instalar WebMatrix 3 sobre Windows 10 y no tendremos que ...

# data[].attributes.attachment_link.title
Instalación y primeros pasos con WebMatrix

# data[].attributes.attachment_link.description
Cómo instalar la plataforma WebMatrix, un programa gratuito de Microsoft que concentra todo aquello que un desarrollador web puede necesitar para desarrollar páginas web.

# data[].attributes.attachment_link.title
06.- Curso de Node.js. Crear Aplicaciones Node.js con WebMatrix.

# data[].attributes.attachment_link.description
Descarga Cursos completos con códigos en http://www.videotutoriales.com Descarga videotutoriales sueltos en http://illasaron.com/html Videotutorial Nº 6 del Curso de Node.js que dedicamos a la instalación de WebMatrix y su configuración para el desarrollo de Aplicaciones web con Node.js. Requisitos de instalación. La plataforma de desarrollo web. Las tres plantillas para el trabajo con Node.

# data[].attributes.attachment_link.entities[].name
Install Wordpress Locally Using Microsoft Webmatrix Easily

# data[].attributes.attachment_link.title
WebMatrix tutorial: What is WebMatrix? | lynda.com

# data[].attributes.attachment_link.description
This tutorial explores WebMatrix in depth. Watch more at http://www.lynda.com/WordPress-tutorials/Installing-Running-WordPress-WebMatrix/114909-2.html?utm_medium=viral&utm_source=youtube&utm_campaign=videoupload-web-6yVZsmKVqY0. This tutorial is a single movie from the Installing and Running WordPress: WebMatrix course presented by lynda.com author Morten Rand-Hendriksen. The complete course duration is 43 minutes long, and is designed for Windows users who want to install and configure WordPress locally on a PC with Microsoft WebMatrix Introduction 1.

# data[].attributes.body
Una herramienta de Microsoft que esta orientada al desarrollo web, permitiendo desarrollar en PHP y ASP.NET. Además integra un servidor IIS para poder visualizar los desarrollos y una versión compacta de SQLServer para gestionar nuestra base de datos y también admite la instalación de un CMS, la herramienta es muy completa y totalmente gratuita.