Está en la página 1de 16

ASP.

NET

Introducción
Actualmente el desarrollo de aplicaciones se está realizando a través de las nuevas tecnologías de
información. Las aplicaciones hoy en día están enfocadas al uso de una red como la internet, ya que
al disponer de un software que pueda ser accedido desde cualquier lugar del mundo y desde
cualquier dispositivo, genera muchas ventajas para los usuarios y empresas.

Según Microsoft “ASP.NET es un marco web de código abierto, creado por Microsoft, para crear
servicios y aplicaciones web modernos con .NET. ASP.NET es multiplataforma y se ejecuta en
Windows, Linux, macOS, and Docker.”

La plataforma .NET es creada por Microsoft para desarrolladores y está compuesta por
herramientas, lenguajes de programación y bibliotecas para crear diferentes tipos de aplicaciones.
Algunos lenguajes incluidos en .NET son; C#, F# y Visual Basic, Base de bibliotecas para trabajar con
cadenas, fechas, archivos/E/S, y Editores y herramientas para Windows, Linux, macOS, and Docker
y mucho más.

ASP.NET amplía la plataforma .NET con herramientas y bibliotecas específicas para compilar
aplicaciones web. Estas son algunas cosas que ASP.NET agrega a la plataforma .NET:

• Marco base para procesar solicitudes web en C# o F#


• Sintaxis de plantillas de páginas web, conocida como Razor, para crear páginas web
dinámicas con C#.
• Bibliotecas para modelos web comunes, como El controlador de vista de modelos (MVC)
• Sistema de autenticación que incluye bibliotecas, una base de datos y páginas de plantilla
para controlar inicios de sesión, incluida la autenticación multifactor y la autenticación
externa con Google, Twitter, y más.
• Extensiones del editor para proporcionar resaltado de sintaxis, finalización de código y otras
funciones específicas para desarrollar páginas web

Al usar ASP.NET, su código de back-end, como la lógica de negocios y el acceso a datos, se escribe
usando C#, F# o Visual Basic.
Razor proporciona una sintaxis para crear páginas web dinámicas mediante HTML y C#. El código de
C# se evalúa en el servidor y el contenido HTML resultante se envía al usuario. El código que ejecuta
el lado cliente se escribe en JavaScript. ASP.NET se integra con marcos de JavaScript e incluye
plantillas preconfiguradas para marcos de aplicación de página única (SPA), como React y Angular.

Si usa ASP.NET, encontrará otro término ASP.NET Core.

ASP.NET Core es la versión de código abierto y multiplataforma de ASP.NET. Se debería usar


ASP.NET Core para todas las aplicaciones nuevas. Las versiones solo de Windows de ASP.NET, que
existían antes de ASP.NET Core, normalmente se conocen como ASP.NET. La mayor parte de la
innovación se produce en ASP.NET Core, pero otras versiones siguen recibiendo actualizaciones
secundarias y correcciones de errores.1

El siguiente curso nos permitirá conocer el desarrollo de aplicaciones bajo ambiente web y entrar
en la vanguardia actual año 2023 con la plataforma .NET.

1. Diferencias entre ASP.NET y ASP.NET Core. 2


Para hablar de ASP.NET Core primero debemos conocer sobre ASP.NET.

1.1 ASP
Active Server Pages (ASP): es el primer lenguaje de scripting (secuencia de comandos) del lado del
servidor de Microsoft. El Active Server Pages (ASP) original fue el primer lenguaje de scripting del
lado del servidor publicado por Microsoft. Lanzado en 1996, Active Server Pages permitía crear
páginas web en el servidor de manera dinámica. Otros lenguajes de secuencias de comandos suelen
depender de Linux como sistema operativo y de un servidor web de código abierto, como Apache.
Por el contrario, Microsoft posicionó Active Server Pages como parte del Internet Information Server
(IIS), el cual es un servidor que se ejecuta en plataforma Windows.

¿Como funciona?

La funcionalidad básica de ASP puede compararse con la de PHP o la de Java Server Pages (JSP). En
las tres tecnologías se utilizan archivos de plantilla, que contienen fragmentos de código ejecutables
incrustados en contenido HTML estático. El código se escribe entre etiquetas especiales para

1
Consultado el 30/01/2023 de la página de Microsoft. https://dotnet.microsoft.com/es-es/
2
Consultado el 30/01/2023 de la página de Digital Guide Ionos. https://www.ionos.es/digitalguide/paginas-
web/desarrollo-web/que-es-aspnet/
separarlo del HTML. Los dialectos específicos de Microsoft disponibles en aquel momento, VBScript,
JScript y PerlScript, se utilizaban como lenguajes de programación.

Cuando el navegador accede a una URL (“request”), el código se ejecuta en el servidor. La ejecución
genera contenido HTML que se inserta en las estructuras HTML predefinidas. En general, el
resultado es un documento que consta de contenido HTML estático y generado dinámicamente, y
que se entrega como una respuesta al navegador (“response”) y se muestra al usuario. Cualquier
cambio en el contenido de la página, por ejemplo, debido a las entradas del usuario, requería un
ciclo completo de request-response y, por lo tanto, que se volviera a cargar la página. A
continuación, se muestra un ejemplo de código ASP:

ASP todavía no era un framework. Por el contrario, empleaba unos pocos objetos sueltos sin relación
entre sí. A partir de ellos, se tejía un sitio web dinámico: Application, Request, Response, Server,
Session, ASPError.

1.2 ASP.NET
ASP.NET: de Active Server Pages al framework

ASP.NET, el sucesor del ASP clásico, se presentó en el año 2003. En lugar de unos pocos objetos
sueltos, utilizaba el framework .NET como una subestructura que englobaba los procesos que se
requerían con frecuencia, como el acceso a las bases de datos o la autenticación y la autorización
de usuarios. En conjunto, ASP.NET podría compararse a frameworks de Java más populares del
momento como Struts o Spring. Recordemos que las Frameworks son plataformas o entornos de
trabajo para facilitar la codificación.

ASP.NET incluía los formularios Web Forms como característica decisiva. El enfoque de Web Forms
permitía a los desarrolladores de Windows experimentados programar páginas web dinámicas. Los
mecanismos subyacentes a la web permanecían ocultos a los desarrolladores, que podían seguir
recurriendo a los flujos de trabajo y entornos de desarrollo que les eran familiares. En particular, se
utilizaban herramientas visuales específicas de Microsoft para el desarrollo rápido de aplicaciones
o Rapid Application Development (RAD).

Los formularios Web Forms permitían a los desarrolladores de Windows avanzar rápidamente con
la programación web. Sin embargo, al mismo tiempo, el enfoque limitaba el grado de control sobre
las páginas HTML entregadas. Poco tiempo después, con ASP.NET MVC, se introdujo un modelo de
desarrollo alternativo. Este seguía el patrón establecido de modelo-vista-controlador (MVC) y
permitía implementar de manera más limpia el principio de la separación de intereses (separation
of concerns). Basado en el innovador marco Ruby on Rails, ASP.NET MVC ofrecía una buena
funcionalidad para el andamiaje de los proyectos.

Actualmente, ASP.NET ha sido reemplazado por ASP.NET Core, el desarrollo posterior. Sin embargo,
ambos nombres se utilizan a menudo como sinónimos.

1.3 ASP.NET Core.


ASP.NET Core: nuevo desarrollo basado en código abierto.

Con el lanzamiento de ASP.NET Core, la organización del framework cambió por completo. A medida
que Microsoft continuaba con su tendencia hacia el código abierto, el desarrollo de ASP.NET Core
se puso bajo los auspicios de la .NET Foundation. El código fuente del proyecto está disponible bajo
una licencia de código abierto.

A nivel técnico, ASP.NET Core es una versión rediseñada de ASP.NET 4.0, que aúna los componentes
de ASP.NET que han ido surgiendo orgánicamente. El framework hace posible el desarrollo de
proyectos con ASP.NET Core y el hosting fuera del ecosistema de Windows. En Windows, ASP.NET
Core se basa en el framework .NET, mientras que, en otros sistemas operativos, se utiliza el
framework .NET Core.

¡Importante!: Si realizas aplicaciones con ASP.NET Core usando Framework.NET solo correrán en
plataforma Windows y su código será limitado, pero si usas Framework.NET Core las aplicaciones
correrán en Windows, Linux, MacOS y muchos más.

De acuerdo con los avances en la tecnología web, ASP.NET Core es compatible con el uso en la nube.
Además del tradicional Internet Information Server (IIS) de Microsoft, como entorno de alojamiento
de ASP.NET se utilizan contenedores y entornos de servidor abiertos. El framework admite código
del lado del cliente y enfoques modernos para la programación reactiva. Esto significa que ASP.NET
Core es comparable a Frameworks basados en JavaScript como React.

1.4 ¿Para qué proyectos es adecuado ASP.NET?


Con el framework ASP.NET se pueden implementar proyectos web de todo tipo. En particular, es
adecuado para páginas web dinámicas y aplicaciones web, incluidas las aplicaciones de página única
o single page app (SPA). También se pueden implementar servicios basados en web, como API y
sistemas para comunicación en tiempo real. A lo largo de los años, el entorno se ha utilizado con
diversos enfoques para diferentes fines. A continuación, los veremos con más detalle y resumiremos
su trayectoria.

Modelos de programación en ASP.NET

Con el avance de las tecnologías web a partir de la década de 2000, se han ido incorporando nuevos
enfoques al desarrollo web en ASP.NET. Imagínatelos como una caja de herramientas bien
organizada, con diferentes herramientas disponibles para cada tipo de proyecto. Dependiendo de
los requisitos, se pueden combinar varios enfoques en un mismo proyecto. Con el lanzamiento de
ASP.NET Core, numerosos modelos de programación desarrollados de manera orgánica se
reunieron bajo un mismo framework, lo que ayudó a simplificar la elección del enfoque más
adecuado para cada situación.

1.4.1 ASP.NET Web Forms


Con el clásico Web Forms, las páginas se ensamblan a partir de componentes predefinidos. Se
utilizan unos módulos de formularios de aspecto visual y cada componente se coloca mediante la
función de arrastrar y soltar. Esto les resultaba especialmente atractivo a los desarrolladores con
experiencia programando en Windows, ya que les permitía utilizar las herramientas para el
desarrollo rápido de aplicaciones (RAD) con las que estaban familiarizados, con la diferencia de que
el producto final no era una aplicación de Windows, sino una página web dinámica.

El enfoque de Web Forms se basa en el modelo de código subyacente (code-behind) de Microsoft,


que obliga a seguir el principio de la separación de intereses:

• Los archivos de plantilla con la extensión .aspx definen la estructura HTML de la página y
contienen marcadores de posición para el contenido generado dinámicamente.
• La propia lógica de la aplicación se transfiere a un archivo separado con la extensión;
.aspx.cs o .aspx.vb. Se trata del archivo code-behind del mismo nombre.
• El cliente recupera el archivo .aspx disponible en una URL. Los componentes estáticos y
dinámicos se combinan en el servidor. El documento HTML resultante se entrega al cliente.
• Con cada entrada del usuario en la página, los datos se transfieren a la misma URL a través
de una solicitud GET o POST y se procesan mediante el archivo code-behind.

Se adopta un enfoque orientado a objetos para implementar la lógica de la aplicación: el archivo


code-behind define una clase derivada. El lenguaje de programación utilizado suele ser C# o Visual
Basic. Es interesante que el archivo code-behind se precompile solo una vez, lo que conlleva una
ejecución más rápida y una mayor resistencia frente a errores cuando se llama a la página.

1.4.2 ASP.NET MVC


En contraposición con el ASP original, los formularios Web Forms representaban un paso decidido
hacia la separación de intereses. Con ASP, los componentes de código y HTML estático se
combinaban en un solo archivo. En cambio, con Web Forms, se producía una separación entre el
archivo de plantilla y el archivo code-behind. Con ASP.NET MVC, se añadió otro modelo de
programación a ASP.NET, que permitía el desarrollo web basado en el patrón de modelo-vista-
controlador (MVC).

El patrón MVC distingue entre la lógica de la aplicación (“modelo”), la plantilla de visualización


(“vista”) y la interacción del usuario (“controlador”). Una de las ventajas del enfoque de MVC es que
cada concepto se puede someter mejor a pruebas. Además, la separación de intereses permite
utilizar diferentes controladores. En lugar de enviar toda la entrada del usuario a un único URL y
volver a cargar la página, se usa AJAX a través de jQuery, por ejemplo. Esto permite que se vuelvan
a cargar partes de la página. Con ASP.NET Core MVC, la tradición de ASP.NET MVC se perpetúa en
la versión actual del framework.

1.4.3 ASP.NET Web Pages


ASP.NET Web Forms y ASP.NET MVC son adecuados para desarrollar páginas web complejas. Si
necesitas varias páginas con componentes reutilizables, ambos modelos de programación son
ideales. Pero ¿y si no las necesitas? Supongamos que queremos crear una página web sencilla que
conste de una sola página o solo unas pocas. Hay algunos componentes dinámicos, pero la atención
se centra más en un diseño sofisticado que en una lógica de aplicación compleja y en el
procesamiento de la entrada del usuario. En este caso, sería excesivo definir clases propias o
esforzarse en la separación de acuerdo con el modelo MVC.

ASP.NET Web Pages es ideal para los casos en que la lógica de la aplicación tiene menos
protagonismo que un diseño y una presentación sofisticados. En este modelo, similar al PHP o al
ASP clásico, dentro del archivo se combinan estructuras HTML estáticas y componentes de código
dinámico. Para ello se utiliza una sintaxis especial. ASP.NET Web Pages es especialmente adecuado
para crear páginas de aterrizaje (en inglés, landing pages).

1.4.4 ASP.NET Web API


Todos los modelos de programación presentados hasta ahora tienen como objetivo generar
contenido HTML para el usuario humano. Además, ASP.NET Framework contiene modelos que se
utilizan para proporcionar una infraestructura para los proyectos web. ASP.NET Web API es un
modelo de programación para crear API REST. El acceso a los puntos finales de la API se realiza a
través de AJAX. Como formato para la transmisión de datos, se utiliza JSON o XML.

1.4.5 ASP.NET WebHooks


ASP.NET WebHooks es una implementación del patrón WebHooks. Los webhooks permiten publicar
y suscribirse a eventos que tienen lugar en un sistema. Puede tratarse, por ejemplo, de cargar un
archivo o recibir un pago. Un suscriptor registra el cambio, que se rastreará con el sistema de
publicación. Para ello, transfiere una URL: el WebHook del mismo nombre. Cuando tiene lugar el
evento registrado, el sistema de publicación llama al WebHook y el suscriptor es informado del
evento.

1.4.6 SignalR
SignalR es un marco para la comunicación en tiempo real entre cliente y servidor. Este framework
se basa en el estándar WebSockets y permite la transferencia bidireccional de datos. Los
navegadores que no son compatibles con WebSockets pasan a ser gestionados por mecanismos de
reserva. SignalR suele utilizarse para implementar servicios de chat basados en navegador y
software de videoconferencias.

1.5 Nuevos modelos de programación en ASP.NET Core


ASP.NET Core es el sucesor de ASP.NET. El framework ASP.NET Core fue reescrito por completo,
pero es altamente compatible con su predecesor. Los componentes de ASP.NET anteriormente
separados se han fusionado en la versión Core. Además, algunos componentes se han desarrollado
desde cero, manteniendo los nombres que tenían en la versión anterior. Por ello, el framework
SignalR existe tanto en ASP.NET como en ASP.NET Core. Vamos a echar un vistazo a las principales
novedades que ha aportado el desarrollo de ASP.NET Core.

1.5.1 ASP.NET Core MVC: sitios de modelo-vista-controlador basados en API


Con ASP.NET Core MVC, se han combinado las funcionalidades de ASP.NET MVC y ASP.NET Web
API. De esta manera, se pueden desarrollar aplicaciones web altamente dinámicas con una interfaz
de usuario modular y una API subyacente. En el proceso, el framework .NET Core se utiliza como
una subestructura común. Los conocidos enfoques de .NET para el desarrollo con API se pueden
aplicar al desarrollo con MVC y viceversa.

1.5.2 Razor Pages: evolución de ASP.NET Web Pages


Razor Pages cubre un nicho similar al que cubría ASP.NET Web Pages en el pasado. Conviene
utilizarlo cuando el patrón de modelo-vista-controlador supone una sobrecarga innecesaria. Si, por
ejemplo, se quiere crear una página de aterrizaje, con Razor Pages se puede implementar de manera
fácil. La sintaxis de Razor se utiliza para crear la plantilla de la página. Como es habitual en el universo
.NET, se puede emplear C# y Visual Basic como lenguajes de programación.

Vamos a ver un ejemplo de una Razor Page. Cabe destacar que, como signo de apertura, se utiliza
@ en lugar de las etiquetas de código de apertura y cierre habituales en los lenguajes de plantillas:

1.5.3 Programación reactiva con Blazor: “.NET in the browser”


El framework Blazor se basa en la sintaxis de Razor antes mencionada; de hecho, el nombre de
Blazor proviene de “Browser + Razor”. Como sugiere el nombre, Blazor se centra en el navegador
como entorno de ejecución. Con Razor Pages, las interacciones del usuario se procesan en el
servidor. Blazor, por su parte, permite la programación reactiva, en la que cada componente de la
página reacciona dinámicamente a los cambios en el navegador. Esto hace que Blazor sea más o
menos comparable a las tecnologías React, Angular y Vue.

A continuación, mostramos un ejemplo sencillo de programación reactiva con Blazor. Vinculamos el


valor de un campo de entrada a la variable “name”. Se utiliza la sintaxis de Razor:

Además de la programación reactiva, hay otra característica de Blazor que resulta muy interesante:
a través de WebAssembly, los lenguajes .NET se pueden compilar para ser ejecutados en el
navegador. Por lo tanto, a menudo se hace referencia a la expresión “.NET in the browser” cuando
se habla de Blazor. La ventaja es que el código del lado del cliente no tiene que escribirse en
JavaScript. En cambio, el desarrollo se realiza en C# o Visual Basic. El código puede acceder a los
conocidos componentes del framework .NET.

2. ¿Cuáles son las ventajas e inconvenientes de ASP.NET?3


Con ASP.NET o ASP.NET Core, los usuarios disponen de un entorno muy desarrollado para crear una
amplia variedad de proyectos web. El marco incluye lenguajes de programación, editores de código
e IDE, así como herramientas de desarrollo y un floreciente ecosistema de paquetes disponibles de
forma gratuita. Hoy en día se utilizan métodos modernos como la programación reactiva,
WebSockets y WebAssembly. Tradicionalmente, la mayor desventaja de utilizar ASP.NET era su
estrecha relación con Microsoft y la consiguiente dependencia del proveedor. Con la continua
apertura hacia el código abierto, han disminuido las objeciones en ese sentido.

2.1 ¿Qué ventajas ofrece ASP.NET?


Los desarrolladores familiarizados con la programación en el ecosistema de Microsoft son los que
más ventajas obtienen de trabajar con ASP.NET, ya que les permite recurrir fácilmente a los
lenguajes, herramientas y flujos de trabajo que ya conocen. El framework .NET, altamente

3
Consultado el 30/01/2023 de la página de Digital Guide Ionos. https://www.ionos.es/digitalguide/paginas-
web/desarrollo-web/que-es-aspnet/
desarrollado, se utiliza como subestructura de ASP.NET, lo que significa que hay componentes
adecuados para gran variedad de aplicaciones, una gran ventaja a la hora de desarrollar aplicaciones
complejas de forma rápida y con resultados fiables.

El framework .NET tiene una estructura modular y emplea Common Language Runtime (CLR) como
entorno de ejecución, lo que permite utilizar diferentes lenguajes de programación, siempre que
cumplan con el estándar Common Language Infrastructure (CLI). Entre los lenguajes CLI
desarrollados por Microsoft se incluyen, además de los clásicos C# y Visual Basic, orientados a
objetos, el lenguaje funcional más nuevo F#. Los lenguajes CLI se pueden ejecutar como código del
lado del cliente en el navegador a través de Blazor y WebAssembly.

Aunque, en un principio, ASP.NET se lanzó como software propietario gestionado por Microsoft, hoy
es un proyecto de código abierto auspiciado por la .NET Foundation. En el transcurso de este
proceso de apertura, se establecieron el administrador de paquetes NuGet y el repositorio público
de paquetes correspondiente. De manera comparable a NPM o RubyGems, los desarrolladores de
ASP.NET tienen a su disposición un ecosistema de paquetes de uso libre.

2.2 ¿Qué inconvenientes tiene ASP.NET?


La mayor ventaja de ASP.NET, es decir, utilizar el ecosistema específico de Microsoft, es también el
mayor inconveniente de esta tecnología, ya que, por lo general, el mundo del desarrollo web se
basa en gran medida en plataformas, lenguajes y formatos gratuitos y abiertos. Asimismo, los
desarrolladores que se introducen en el universo .NET por primera vez se encuentran con una
abrumadora variedad de versiones y modelos de programación para elegir.

En el pasado, quien quería trabajar con el framework ASP.NET solo podía hacerlo en Windows.
Desde hace años, Microsoft ha buscado abrirse de manera concertada hacia estándares
ampliamente utilizados y de código abierto. Con la aparición de ASP.NET Core, el marco ahora es
compatible con las tres principales familias de sistemas operativos: Windows, macOS y Linux.
También es posible mantener el entorno de desarrollo en un contenedor Docker.

El ASP.NET clásico solo se podía alojar en Internet Information Server (IIS), la tecnología de servidor
de Microsoft: una gran desventaja en comparación con otros frameworks de desarrollo web, los
cuales también se ejecutan en Linux. El alojamiento ASP.NET tiene requisitos especiales y no está
disponible para todos los proveedores. Cabe decir que era posible utilizar otros servidores web
mediante Mono, que permite implementar .NET de forma gratuita. Sin embargo, el cambio real solo
se produjo con la aparición de .NET Core y la Open Web Interface for .NET (OWIN). OWIN desacopla
las aplicaciones ASP.NET del servidor web subyacente, eliminando uno de los mayores obstáculos
del uso de este framework.

2.3 ¿Cuáles son los requisitos para el entorno de hosting ASP.NET?


El framework ASP.NET es particular en términos de entorno de alojamiento. Otros frameworks de
desarrollo web basados en los lenguajes PHP, Java, Python o JavaScript se ejecutan en servidores
Linux. En cambio, para el hosting de aplicaciones ASP.NET, antes se necesitaba Windows como
sistema operativo de servidor. También se utilizaba el servidor web Internet Information Services
(IIS) de Microsoft. Para alojar una aplicación ASP.NET en los servidores de Windows, se tenía que
utilizar Managed Windows Hosting. Con este modelo de alojamiento, los servidores son mantenidos
constantemente por el proveedor, que proporciona actualizaciones del software.

El hosting de las aplicaciones ASP.NET Core es mucho más relajado. Además de en IIS, estas se
pueden alojar en gran variedad de entornos de servidor. Para ello se utiliza el servidor web Kestrel
integrado, que se ejecuta en Windows, Linux y macOS. Los servidores web más populares, como
Nginx y Apache, pueden configurarse como proxy inverso y utilizarse junto con Kestrel. La
alternativa HTTP.sys de Kestrel también está disponible en Windows.

En conclusión, realizamos un cuadro comparativo de ASP.

2.4 ¿Qué es lo último para inicios del 2023?


Debemos tener en cuenta que ASP.NET finalizo con su versión 4.8 en el año 2019 y aunque aún
existe soporte por parte de Microsoft en un tiempo no muy largo será obsoleto. Por lo tanto, se
recomienda desarrollar las nuevas aplicaciones y generar formación a partir de la versión de
ASP.NET Core que para Microsoft contiene a partir de su versión .NET 5.0. Se debe tener en cuenta
que Microsoft decidió eliminar la palabra Core de .NET Core y llamarlo .NET 5 el cual fue lanzado el
10/11/2020. Por lo tanto, cuando se desea usar ASP.NET Core debemos instalar Microsoft .NET SDK
6.0 su versión estable actual.
Si se desea conocer más acerca de .NET se puede visitar el siguiente el siguiente LINK:

https://learn.microsoft.com/es-es/dotnet/fundamentals/

3. ¿Como usar ASP.NET?


En toda programación se requiere de un entorno de desarrollo para la crear nuestras aplicaciones.
Existen muchas formas de hacerlo, en el siguiente capitulo explicaremos como usarlos.

3.1 ASP.NET con el SDK de .NET 6.0


¿Qué es el SDK de .NET?

El SDK de .NET es un conjunto de bibliotecas y herramientas que permiten a los desarrolladores


crear aplicaciones y bibliotecas de .NET. entre ellas aplicaciones web con ASP.NET. Contiene los
siguientes componentes que se usan para compilar y ejecutar aplicaciones:

• La CLI de .NET: La interfaz de la línea de comandos (CLI) de .NET es una cadena de


herramientas multiplataforma que sirve para desarrollar, compilar, ejecutar y publicar
aplicaciones .NET.
• El entorno de ejecución y las bibliotecas de .NET: .NET es una plataforma para
desarrolladores gratuita, multiplataforma y de código abierto diseñada para compilar
muchos tipos de aplicaciones diferentes. .NET se basa en un entorno de ejecución (Runtime)
de alto rendimiento que muchas aplicaciones a gran escala usan en producción.
• Controlador dotnet: El controlador se denomina dotnet y tiene dos responsabilidades,
ejecutar una aplicación dependiente del marco o ejecutar un comando.

¿Pero que es .NET?

.NET es una plataforma para desarrolladores de código abierto, multiplataforma y gratuita para
crear muchos tipos de aplicaciones diferentes. Con .NET, puede usar varios lenguajes, editores y
bibliotecas para crear aplicaciones web, móviles, de escritorio, juegos, IoT, etc.

Lenguajes de .NET

Puede escribir aplicaciones .NET en C#, F# o Visual Basic.

• C# es un lenguaje de programación simple, moderno, orientado a objetos y con seguridad


de tipos.
• F# es un lenguaje de programación que facilita la escritura de código conciso, sólido y eficaz.
• Visual Basic es un lenguaje accesible con una sintaxis sencilla para crear aplicaciones seguras
y orientadas a objetos.

Multiplataforma de .NET

Tanto si trabaja en C#, F# o Visual Basic, el código se ejecutará de forma nativa en cualquier sistema
operativo compatible. Puede compilar muchos tipos de aplicaciones con .NET. Algunas son
multiplataformas y otras tienen como destino un conjunto específico de sistemas operativos y
dispositivos.

Una API coherente

.NET proporciona un conjunto estándar de api y bibliotecas de clases base que son comunes a todas
las aplicaciones .NET.

Cada modelo de aplicación también puede exponer API adicionales que son específicas de los
sistemas operativos en los que se ejecuta o las funcionalidades que proporciona. Por ejemplo,
ASP.NET es el marco web multiplataforma que proporciona API adicionales para compilar
aplicaciones web que se ejecutan en Linux o Windows.

Bibliotecas

Para ampliar la funcionalidad, Microsoft y otros usuarios mantienen un ecosistema de paquetes


.NET en buen estado. NuGet es el nombre del administrador de paquetes creado específicamente
para .NET que contiene más de 100 000 paquetes.

Modelos de aplicación

Las siguientes son modelos de aplicación que se pueden crear con .NET
Comunidad activa y código abierto

.NET es de código abierto y se encuentra en .NET Foundation (https://dotnetfoundation.org/). La


.NET Foundation es una organización independiente para fomentar el desarrollo abierto y la
colaboración en torno al ecosistema de .NET.

Dado que .NET es de código abierto, puede unirse a los miles de desarrolladores y empresas que ya
contribuyen a la plataforma .NET.

Obtenga respuestas rápidas a preguntas con una comunidad activa de desarrolladores en Stack
Overflow.

3.2 Instalación de .NET


Descarga

Para instalar .NET debemos descargarlo desde la página oficial de Microsoft.


https://dotnet.microsoft.com/es-es/download.
Aunque ya existe una nueva versión .NET 7.0 se recomienda trabajar bajo una versión estable como
.NET 6.0 la cual aún cuenta con soporte. Debemos tener en cuenta que el SDK a descargar sea
compatible con nuestra arquitectura de procesamiento de nuestra computadora. (x64, x86 o
Arm64)

Instalación

Realice la instalación siguiendo el asistente. Una vez finalice obtendrá una ventana como la
siguiente.

Una vez instalado comprobamos su funcionamiento. Para ellos abrimos nuestra ventana de
comandos o símbolo de sistema y ejecutamos el comando dotnet.
Esto mostrara que ha sido instalado nuestro SDK. Si deseamos ver la versión instalada podemos
escribir la siguiente línea de comandos. dotnet --list-sdks

Nota: El SDK no requiere ser descargado ni instalado cuando se hace uso de un IDE como Visual
Studio dado que estos entornos ya lo traen consigo incluido.

4. Escenario de ejemplo usando Razor con ASP.NET Core


ASP.NET Core admite la creación de páginas web con un motor de plantillas nativo denominado
Razor. En este escenario, aprenderemos a crear una aplicación web Razor Pages de ASP.NET Core
multiplataforma con .NET y C#..

4.1 Contexto del escenario de ejemplo


Imaginemos que el dueño de una empresa de pizzas llamada Contoso Pizza, ha pedido que
desarrolle un servicio de administración del inventario de pizzas como requisito previo para el sitio
web de administración interna de la empresa. La aplicación debe compilarse de tal forma que los
intereses del modelo de datos y la vista estén separados.

¿Qué va a hacer?

En este escenario, aprenderemos a:

• Entender cuándo y por qué usar Razor Pages para la aplicación ASP.NET Core.
• Usar la CLI de .NET para crear una aplicación de Razor Pages.

También podría gustarte