Visão geral do ASP.NETASP.NET overview

O ASP.NET é um framework web grátis para a criação de ótimos sites e aplicativos web usando HTML, CSS e JavaScript.ASP.NET is a free web framework for building great websites and web applications using HTML, CSS, and JavaScript. Você também pode criar APIs da Web e usar tecnologias em tempo real como Web Sockets.You can also create Web APIs and use real-time technologies like Web Sockets.

ASP.NET Core é uma alternativa ao ASP.NET.ASP.NET Core is an alternative to ASP.NET. Consulte a orientações sobre como escolher entre ASP.NET e ASP.NET Core.See the guidance on how to choose between ASP.NET and ASP.NET Core.

IntroduçãoGet started

Instale Visual Studio 2017 Community edition, um IDE gratuito para o ASP.NET no Windows.Install Visual Studio 2017 Community edition, a free IDE for ASP.NET on Windows.

Sites e aplicativos webWebsites and web applications

O ASP.NET oferece três estruturas para a criação de aplicativos da web: Web Forms, ASP.NET MVC e páginas da Web ASP.NET.ASP.NET offers three frameworks for creating web applications: Web Forms, ASP.NET MVC, and ASP.NET Web Pages. Todas as três estruturas são estáveis e maduro e você pode criar aplicativos de sucesso da web com qualquer um deles.All three frameworks are stable and mature, and you can create great web applications with any of them. Não importa qual estrutura escolhida, você obterá todos os benefícios e recursos do ASP.NET em todos os lugares.No matter what framework you choose, you will get all the benefits and features of ASP.NET everywhere.

Cada estrutura tem como alvo um estilo de desenvolvimento diferentes.Each framework targets a different development style. Aquele que você escolha depende de uma combinação de seus ativos de programação (dados de Conhecimento, habilidades e experiência de desenvolvimento), o tipo de aplicativo que você está criando e você se sentir confortável com a abordagem de desenvolvimento.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.

Abaixo está uma visão geral de cada uma das estruturas e algumas ideias para como escolher entre eles.Below is an overview of each of the frameworks and some ideas for how to choose between them. Se você preferir um vídeo de Introdução, consulte tornando sites com o ASP.NET e What ' s ferramentas da Web?If you prefer a video introduction, see Making Websites with ASP.NET and What is Web Tools?

Se você tiver experiência emIf you have experience in Estilo de desenvolvimentoDevelopment style ExperiênciaExpertise
Web FormsWeb Forms Win Forms, WPF, .NETWin Forms, WPF, .NET Rápido desenvolvimento usando uma vasta biblioteca de controles que encapsulam a marcação HTMLRapid development using a rich library of controls that encapsulate HTML markup Mid-Level, Advanced RADMid-Level, Advanced RAD
MVCMVC Ruby on Rails, .NETRuby on Rails, .NET Obter controle total sobre a marcação HTML, código e marcação separada e fáceis de escrever testes.Full control over HTML markup, code and markup separated, and easy to write tests. A melhor opção para aplicativos móveis e de página única (SPA).The best choice for mobile and single-page applications (SPA). Mid-Level, AdvancedMid-Level, Advanced
Páginas da WebWeb Pages Clássico ASP, PHPClassic ASP, PHP Marcação HTML e seu código junto no mesmo arquivoHTML markup and your code together in the same file Novo, de nível médioNew, Mid-Level

Web FormsWeb Forms

Com Web Forms do ASP.NET, você pode criar sites dinâmicos usando um modelo familiar de arrastar e soltar, controlada por evento.With ASP.NET Web Forms, you can build dynamic websites using a familiar drag-and-drop, event-driven model. Uma superfície de design e centenas de controles e componentes permitem que você crie rapidamente sofisticados, poderosos sites baseados em UI com acesso a dados.A design surface and hundreds of controls and components let you rapidly build sophisticated, powerful UI-driven sites with data access.

Saiba mais sobre Web FormsLearn more about Web Forms

MVCMVC

ASP.NET MVC lhe oferece uma maneira eficiente com base em padrões para criar sites dinâmicos que habilitam uma separação limpa de preocupações e que lhe dá controle total sobre a marcação para o desenvolvimento ágil e divertido.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. O ASP.NET MVC inclui muitos recursos que permitem o desenvolvimento rápido e amigável a TDD para criar aplicativos sofisticados que usam os últimos padrões da web.ASP.NET MVC includes many features that enable fast, TDD-friendly development for creating sophisticated applications that use the latest web standards.

Saiba mais sobre o MVCLearn more about MVC

Páginas da Web do ASP.NETASP.NET Web Pages

Páginas da Web ASP.NET e a sintaxe do Razor fornecem uma maneira rápida, acessível e leve de combinar código de servidor com HTML para criar conteúdo dinâmico da web.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. Conectar-se aos bancos de dados, adicionar um vídeo, vincular a sites de rede social e incluem muitos mais recursos que ajudam você a criam belos sites que estão em conformidade com os padrões da web mais recente.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.

Saiba mais sobre as páginas da WebLearn more about Web Pages

Observações sobre Web Forms, MVC e páginas da WebNotes about Web Forms, MVC, and Web Pages

Todas as três estruturas do ASP.NET são baseadas no .NET Framework e compartilham a funcionalidade de núcleo do .NET e do ASP.NET.All three ASP.NET frameworks are based on the .NET Framework and share core functionality of .NET and of ASP.NET. Por exemplo, todas as três estruturas oferecem um modelo de segurança de logon com base em torno de associação, e todos os três compartilham os mesmos recursos para o gerenciamento de solicitações, manipulação de sessões e assim por diante que fazem parte da principal funcionalidade do 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.

Além disso, as três estruturas não são totalmente independentes e escolhendo um não evita que usando outro.In addition, the three frameworks are not entirely independent, and choosing one does not preclude using another. Uma vez que as estruturas podem coexistir no mesmo aplicativo web, não é incomum ver componentes individuais dos aplicativos escritos usando estruturas diferentes.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 exemplo, voltado para o cliente de partes de um aplicativo podem ser desenvolvidas no MVC para otimizar a marcação, enquanto o acesso a dados e partes administrativas são desenvolvidas em Web Forms para tirar proveito dos controles de dados e acesso a dados simples.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.

APIs da WebWeb APIs

API Web ASP.NET é uma estrutura que torna mais fácil criar serviços HTTP que alcançam uma ampla gama de clientes, incluindo navegadores e dispositivos móveis.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. O ASP.NET Web API é uma plataforma ideal para o desenvolvimento de aplicativos RESTful no .NET Framework.ASP.NET Web API is an ideal platform for building RESTful applications on the .NET Framework.

Saiba mais sobre a API da WebLearn more about Web API

Tecnologias em tempo realReal-time technologies

SignalR do ASP.NET é uma nova biblioteca para desenvolvedores do ASP.NET que facilita a funcionalidade de desenvolvimento da web em tempo real.ASP.NET SignalR is a new library for ASP.NET developers that makes developing real-time web functionality easier. O SignalR permite a comunicação bidirecional entre servidor e cliente.SignalR allows bi-directional communication between server and client. Servidores podem enviar conteúdos para clientes conectados imediatamente conforme ficam disponível.Servers can push content to connected clients instantly as it becomes available. O SignalR dá suporte a soquetes da Web e reverterá para outras técnicas compatíveis para navegadores mais antigos.SignalR supports Web Sockets, and falls back to other compatible techniques for older browsers. O SignalR inclui APIs para o gerenciamento de conexão (por exemplo, conexão e eventos de desconexão), agrupamento de conexões e autorização.SignalR includes APIs for connection management (for instance, connect and disconnect events), grouping connections, and authorization.

Saiba mais sobre o SignalRLearn more about SignalR

Sites e aplicativos móveisMobile apps and sites

ASP.NET pode potencializar aplicativos móveis nativos com um back-end de API da Web, bem como os sites para celular usando estruturas de design dinâmico como o 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. Se você estiver criando um aplicativo móvel nativo, é fácil criar uma API da Web baseado em JSON para o identificador de acesso a dados, autenticação e notificações por push para seu aplicativo.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. Se você estiver criando um site para celular responsivo, você pode usar qualquer estrutura CSS ou o sistema de grade aberta preferem, ou selecione um sistema móvel poderoso como ótimos aplicativos móveis com o PhoneGap e Sencha ou o jQuery Mobile.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.

Saiba mais sobre o desenvolvimento de site e aplicativo móvelLearn more about mobile app and site development

Aplicativos de página únicaSingle-page applications

Aplicativo de página ASP.NET única (SPA) ajuda a criar aplicativos que incluam significativas interações do lado do cliente usando HTML 5, 3 de CSS e 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 inclui um modelo para criar aplicativos de página única usando o Knockout. js e API Web do ASP.NET.Visual Studio includes a template for building single page applications using knockout.js and ASP.NET Web API. Além do modelo interno do SPA, os modelos criados pela comunidade do SPA também estão disponíveis para download.In addition to the built-in SPA template, community-created SPA templates are also available for download.

Saiba mais sobre o desenvolvimento de aplicativo de página únicaLearn more about single-page app development

WebHooksWebHooks

WebHooks é um padrão HTTP leve, fornecendo um modelo simples de pub/sub para conectar os serviços de SaaS e APIs da Web.WebHooks is a lightweight HTTP pattern providing a simple pub/sub model for wiring together Web APIs and SaaS services. Quando ocorre um evento em um serviço, uma notificação é enviada na forma de uma solicitação HTTP POST para assinantes registrados.When an event happens in a service, a notification is sent in the form of an HTTP POST request to registered subscribers. A solicitação POST contém informações sobre o evento que torna possível para o destinatário para agir de acordo.The POST request contains information about the event which makes it possible for the receiver to act accordingly.

WebHooks são expostos por um grande número de serviços, incluindo o Dropbox, GitHub, Instagram, MailChimp, PayPal, Slack, Trello e muito mais.WebHooks are exposed by a large number of services including Dropbox, GitHub, Instagram, MailChimp, PayPal, Slack, Trello, and many more. Por exemplo, um WebHook pode indicar que um arquivo foi alterado no Dropbox, ou uma alteração de código foi confirmada no GitHub, ou um pagamento foi iniciado no PayPal ou foi criado um cartão no 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.

Saiba mais sobre WebHooksLearn more about WebHooks