.NET - Criando uma aplicação OWIN com hospedagem no IIS - II
Neste artigo vou mostrar como criar uma aplicação OWIN e como hospedar a aplicação no IIS. |
Já vimos na primeira parte do artigo que a especificação OWIN define uma abstração entre servidores Web e aplicativos da Web.
Ao separar o servidor da Web do aplicativo, o OWIN facilita a criação de middleware para o desenvolvimento de aplicações Web na plataforma .NET.
Além disso, o OWIN facilita a portabilidade de aplicativos Web para outros hosts, por exemplo, a auto-hospedagem em um serviço do Windows ou em outro processo.
Criando uma aplicação ASP .NET e usando os pacotes Katana Nuget podemos criar e executar nossa aplicação baseado em Owin de 3 maneiras diferentes:
Além disso temos que a estrutura do OWIN é composta por:
Neste artigo vamos criar uma aplicação OWIN e hospedar o OWIN no IIS. Essa opção oferece a flexibilidade e composibilidade de um pipeline OWIN junto com o conjunto de recursos maduros do IIS. Usando essa opção, o aplicativo OWIN é executado no pipeline de solicitação da ASP.NET.
Recursos usados:
Criando a aplicação OWIN no VS 2017
Abra o VS 2017 Community e crie um projeto Web usando o template ASP .NET Web Application(.NET Framework) usando o nome AspNet_OwinApp;
A seguir selecione o template Empty, sem autenticação, e clique em OK:
Temos assim uma aplicação ASP .NET vazia. Vamos incluir alguns pacotes para torná-la uma aplicação OWIN.
Adicionando os Pacotes NuGet
Vamos então incluir o pacote Nuget Microsoft.Owin.Host.SystemWeb
No menu Tools, selecione Library Package Manager e selecione Package Manager Console.
Na janela do Console do Gerenciador de Pacotes, digite o seguinte comando: Install-Package Microsoft.Owin.Host.SystemWeb
Agora vamos incluir a classe Startup.cs no projeto para poder definir algumas configurações iniciais em nossa aplicação.
Criando a classe Startup
No menu Project clique em Add Class e selecione o template OWIN Startup Class informando o nome Startup e clicando no botão Add:
Inclua o código abaixo no arquivo Startup :
using Microsoft.Owin;
using Owin;
[assembly: OwinStartup(typeof(AspNet_OwinApp.Startup))]
namespace AspNet_OwinApp
{
public class Startup
{
public void Configuration(IAppBuilder app)
{
app.Run(context =>
{
context.Response.ContentType = "text/plain";
return context.Response.WriteAsync("Olá, Sou uma Owin App...");
});
}
}
}
|
Neste código adicionamos o middleware ao pipeline OWIN, implementado como uma função que recebe uma instância do Microsoft.Owin.IOwinContext.
Quando o servidor recebe uma solicitação HTTP, o pipeline OWIN chama o middleware. O middleware define o tipo de conteúdo para a resposta e grava o corpo da resposta
Observe que a estrutura do nosso projeto web é a mais enxuta possível :
Executando o projeto teremos o resultado abaixo:
Temos assim uma aplicação OWIN hospedada no IIS.
Na hospedagem usando o IIS, ele atual como um servidor HTTP e como um processo que hospeda o serviço.
Podemos também usar a Self-Host ou auto-hospedagem usando um processo personalizado. Neste caso nossa aplicação vai criar o processo e usar a classe HttpListner como um servidor HTTP.
Na próxima parte do artigo veremos como criar uma aplicação Console Self-hosted baseada em OWIN.
"Vinde a mim, todos os
que estais cansados e oprimidos, e eu vos aliviarei."(disse Jesus)
Mateus 11:28
Veja os
Destaques e novidades do SUPER DVD Visual Basic
(sempre atualizado) : clique e confira !
Quer migrar para o VB .NET ?
Quer aprender C# ??
Quer aprender os conceitos da Programação Orientada a objetos ? Quer aprender o gerar relatórios com o ReportViewer no VS 2013 ? |
Referências:
Super DVD Vídeo Aulas - Vídeo Aula sobre VB .NET, ASP .NET e C#
Super DVD C# - Recursos de aprendizagens e vídeo aulas para C#
Curso Fundamentos da Programação Orientada a Objetos com VB .NET
ASP .NET Web API - Criando e Consumindo uma Web API ... - Macoratti
ASP .NET Core - Criando sua primeira Web API com ASP ... - Macoratti