Información general de ASP.NETASP.NET overview

ASP.NET es un marco web gratuito para crear excelentes sitios web y aplicaciones web mediante HTML, CSS y JavaScript.ASP.NET is a free web framework for building great websites and web applications using HTML, CSS, and JavaScript. También puede crear API Web y usar tecnologías en tiempo real como Sockets Web.You can also create Web APIs and use real-time technologies like Web Sockets.

ASP.net Core es una alternativa a ASP.net.ASP.NET Core is an alternative to ASP.NET. Vea las instrucciones sobre cómo elegir entre ASP.net y ASP.net Core.See the guidance on how to choose between ASP.NET and ASP.NET Core.

IntroducciónGet started

Instale Visual Studio 2017 Community Edition, un IDE gratuito para ASP.net en Windows.Install Visual Studio 2017 Community edition, a free IDE for ASP.NET on Windows.

Websites y aplicaciones WebWebsites and web applications

ASP.NET ofrece tres marcos de trabajo para la creación de aplicaciones web: Formularios Web Forms, ASP.NET MVC y ASP.NET Web Pages.ASP.NET offers three frameworks for creating web applications: Web Forms, ASP.NET MVC, and ASP.NET Web Pages. Los tres marcos son estables y están maduros, y puede crear excelentes aplicaciones web con cualquiera de ellos.All three frameworks are stable and mature, and you can create great web applications with any of them. Independientemente del marco que elija, obtendrá todas las ventajas y características de ASP.NET Everywhere.No matter what framework you choose, you will get all the benefits and features of ASP.NET everywhere.

Cada marco de trabajo tiene como destino un estilo de desarrollo diferente.Each framework targets a different development style. El que elija depende de una combinación de los recursos de programación (conocimiento, conocimientos y experiencia de desarrollo), el tipo de aplicación que está creando y el enfoque de desarrollo con el que está familiarizado.The one you choose depends on a combination of your programming assets (knowledge, skills, and development experience), the type of application you're creating, and the development approach you're comfortable with.

A continuación se muestra información general de cada una de las plataformas y algunas ideas sobre cómo elegir entre ellas.Below is an overview of each of the frameworks and some ideas for how to choose between them. Si prefiere un vídeo de introducción, consulte creación de sitios web con ASP.net y ¿Qué son las herramientas web?If you prefer a video introduction, see Making Websites with ASP.NET and What is Web Tools?

Si tiene experiencia enIf you have experience in Estilo de desarrolloDevelopment style EspecialidadExpertise
Formularios Web FormsWeb Forms Windows Forms, WPF, .NETWin Forms, WPF, .NET Desarrollo rápido con una rica biblioteca de controles que encapsulan el marcado HTMLRapid development using a rich library of controls that encapsulate HTML markup RAD avanzado de nivel medioMid-Level, Advanced RAD
MVCMVC Ruby on Rails, .NETRuby on Rails, .NET Control total sobre el marcado HTML, el código y el marcado separados y las pruebas fáciles de escribir.Full control over HTML markup, code and markup separated, and easy to write tests. La mejor opción para aplicaciones móviles y de una sola página (SPA).The best choice for mobile and single-page applications (SPA). Nivel intermedio, avanzadoMid-Level, Advanced
Páginas webWeb Pages ASP clásico, PHPClassic ASP, PHP Marcado HTML y el código juntos en el mismo archivoHTML markup and your code together in the same file Nuevo nivel intermedioNew, Mid-Level

Formularios Web FormsWeb Forms

Con los formularios Web Forms ASP.NET, puede crear sitios web dinámicos con un modelo familiar basado en eventos de arrastrar y colocar.With ASP.NET Web Forms, you can build dynamic websites using a familiar drag-and-drop, event-driven model. Una superficie de diseño y cientos de controles y componentes le permiten crear rápidamente eficaces y potentes sitios controlados por la interfaz de usuario con acceso a datos.A design surface and hundreds of controls and components let you rapidly build sophisticated, powerful UI-driven sites with data access.

Más información sobre formularios Web FormsLearn more about Web Forms

MVCMVC

ASP.NET MVC ofrece un método eficaz basado en patrones para crear sitios web dinámicos que permite una separación limpia de preocupaciones y que proporciona control total sobre el marcado para un desarrollo más agradable y ágil.ASP.NET MVC gives you a powerful, patterns-based way to build dynamic websites that enables a clean separation of concerns and that gives you full control over markup for enjoyable, agile development. ASP.NET MVC incluye muchas características que permiten un desarrollo rápido y fácil de usar para crear aplicaciones sofisticadas que usan los estándares web más recientes.ASP.NET MVC includes many features that enable fast, TDD-friendly development for creating sophisticated applications that use the latest web standards.

Más información sobre MVCLearn more about MVC

ASP.NET Web PagesASP.NET Web Pages

ASP.NET Web Pages y el sintaxis Razor proporcionan una manera rápida, accesible y ligera de combinar código de servidor con HTML para crear contenido Web dinámico.ASP.NET Web Pages and the Razor syntax provide a fast, approachable, and lightweight way to combine server code with HTML to create dynamic web content. Conéctese a bases de datos, agregue vídeo, vínculos a sitios de redes sociales e incluya muchas más características que le ayuden a crear sitios atractivos que cumplan los estándares web más recientes.Connect to databases, add video, link to social networking sites, and include many more features that help you create beautiful sites that conform to the latest web standards.

Más información acerca de las páginas webLearn more about Web Pages

Notas sobre formularios Web Forms, MVC y Web pagesNotes about Web Forms, MVC, and Web Pages

Los tres marcos de ASP.NET se basan en el .NET Framework y comparten la funcionalidad básica de .NET y de ASP.NET.All three ASP.NET frameworks are based on the .NET Framework and share core functionality of .NET and of ASP.NET. Por ejemplo, los tres marcos ofrecen un modelo de seguridad de inicio de sesión basado en la pertenencia, y los tres comparten las mismas funciones para administrar solicitudes, controlar sesiones, etc., que forman parte de la funcionalidad básica de ASP.NET.For example, all three frameworks offer a login security model based around membership, and all three share the same facilities for managing requests, handling sessions, and so on that are part of the core ASP.NET functionality.

Además, los tres marcos no son totalmente independientes y elegir uno no impide el uso de otro.In addition, the three frameworks are not entirely independent, and choosing one does not preclude using another. Dado que los marcos de trabajo pueden coexistir en la misma aplicación Web, no es raro ver componentes individuales de aplicaciones escritas con diferentes marcos.Since the frameworks can coexist in the same web application, it's not uncommon to see individual components of applications written using different frameworks. Por ejemplo, las partes orientadas al cliente de una aplicación pueden desarrollarse en MVC para optimizar el marcado, mientras que el acceso a datos y las partes administrativas se desarrollan en formularios Web para aprovechar los controles de datos y el acceso a datos simple.For example, customer-facing portions of an app might be developed in MVC to optimize the markup, while the data access and administrative portions are developed in Web Forms to take advantage of data controls and simple data access.

API webWeb APIs

ASP.NET Web API es un marco que facilita la creación de servicios HTTP que llegan a una amplia gama de clientes, incluidos exploradores y dispositivos móviles.ASP.NET Web API is a framework that makes it easy to build HTTP services that reach a broad range of clients, including browsers and mobile devices. ASP.NET Web API es una plataforma ideal para compilar aplicaciones de RESTful en .NET Framework.ASP.NET Web API is an ideal platform for building RESTful applications on the .NET Framework.

Más información acerca de Web APILearn more about Web API

Tecnologías en tiempo realReal-time technologies

ASP.NET Signalr es una nueva biblioteca para desarrolladores de ASP.NET que facilita el desarrollo de funcionalidades Web en tiempo real.ASP.NET SignalR is a new library for ASP.NET developers that makes developing real-time web functionality easier. Signalr permite la comunicación bidireccional entre el servidor y el cliente.SignalR allows bi-directional communication between server and client. Los servidores pueden insertar contenido en los clientes conectados al instante a medida que esté disponible.Servers can push content to connected clients instantly as it becomes available. Signalr admite Sockets web y recurre a otras técnicas compatibles para los exploradores más antiguos.SignalR supports Web Sockets, and falls back to other compatible techniques for older browsers. Signalr incluye API para la administración de conexiones (por ejemplo, eventos de conexión y desconexión), agrupación de conexiones y autorización.SignalR includes APIs for connection management (for instance, connect and disconnect events), grouping connections, and authorization.

Más información acerca de SignalrLearn more about SignalR

Aplicaciones y sitios móvilesMobile apps and sites

ASP.NET puede potenciar las aplicaciones móviles nativas con un back-end de API Web, así como los sitios web móviles con marcos de diseño con capacidad de respuesta como Twitter bootstrap.ASP.NET can power native mobile apps with a Web API back end, as well as mobile web sites using responsive design frameworks like Twitter Bootstrap. Si va a compilar una aplicación móvil nativa, es fácil crear una API Web basada en JSON para controlar el acceso a los datos, la autenticación y las notificaciones de envío de la aplicación.If you are building a native mobile app, it's easy to create a JSON-based Web API to handle data access, authentication, and push notifications for your app. Si va a crear un sitio móvil con capacidad de respuesta, puede usar cualquier marco CSS o sistema de cuadrícula abierto que prefiera, o bien seleccionar un sistema móvil eficaz como jQuery Mobile o Sencha y excelentes aplicaciones móviles con PhoneGap.If you are building a responsive mobile site, you can use any CSS framework or open grid system you prefer, or select a powerful mobile system like jQuery Mobile or Sencha and great mobile applications with PhoneGap.

Más información sobre el desarrollo de aplicaciones móviles y sitiosLearn more about mobile app and site development

Aplicaciones de una sola páginaSingle-page applications

ASP.NET aplicación de una sola página (SPA) le ayuda a crear aplicaciones que incluyen interacciones del lado cliente significativas con HTML 5, CSS 3 y JavaScript.ASP.NET Single Page Application (SPA) helps you build applications that include significant client-side interactions using HTML 5, CSS 3 and JavaScript. Visual Studio incluye una plantilla para compilar aplicaciones de una sola página mediante Knockout. js y ASP.NET Web API.Visual Studio includes a template for building single page applications using knockout.js and ASP.NET Web API. Además de la plantilla integrada SPA, también se pueden descargar plantillas de SPA creadas por la comunidad.In addition to the built-in SPA template, community-created SPA templates are also available for download.

Más información sobre el desarrollo de aplicaciones de una sola páginaLearn more about single-page app development

WebHooksWebHooks

Webhooks es un patrón de HTTP ligero que proporciona un modelo pub/sub sencillo para el cableado de las API Web y los servicios SaaS.WebHooks is a lightweight HTTP pattern providing a simple pub/sub model for wiring together Web APIs and SaaS services. Cuando se produce un evento en un servicio, se envía una notificación en forma de una solicitud HTTP POST a los suscriptores registrados.When an event happens in a service, a notification is sent in the form of an HTTP POST request to registered subscribers. La solicitud POST contiene información sobre el evento, lo que hace posible que el receptor actúe en consecuencia.The POST request contains information about the event which makes it possible for the receiver to act accordingly.

Los webhooks se exponen mediante un gran número de servicios, como Dropbox, GitHub, Instagram, MailChimp, PayPal, la demora, Trello y muchos otros.WebHooks are exposed by a large number of services including Dropbox, GitHub, Instagram, MailChimp, PayPal, Slack, Trello, and many more. Por ejemplo, un webhook puede indicar que un archivo ha cambiado en Dropbox o que se ha confirmado un cambio de código en GitHub o que se ha iniciado un pago en PayPal o que se ha creado una tarjeta en Trello.For example, a WebHook can indicate that a file has changed in Dropbox, or a code change has been committed in GitHub, or a payment has been initiated in PayPal, or a card has been created in Trello.

Más información sobre webhooksLearn more about WebHooks