.NET - Criando uma aplicação Console Self-Host OWIN - III
Neste artigo vou mostrar como criar uma aplicação OWIN usando a auto-hospedagem ou self-host em uma aplicação console. |
Continuando a segunda parte do artigo vamos criar agora uma aplicação OWIN e hospedá-la em uma aplicação Console.
A ídeia do OWIN é justamente essa : livrar a sua aplicação web da dependência do IIS e permitir que você possa hospedar sua aplicação Web em outro servidor.
Nosso objetivo será então criar uma aplicação Console Self-Host e usá-la como um host onde poderemos hospedar aplicações.
Recursos usados:
Criando a aplicação OWIN no VS 2017
Abra o VS 2017 Community e crie um projeto do tipo Console App (.NET Framework) chamado SelfHost_App;
Temos assim uma aplicação Console. 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 Nuget Package Manager e selecione Mange Nuget Packages for Solution;
Na janela clique em Browse e selecione o pacote Microsoft.Owin.Host.SystemWeb, marque o projeto e clique no botão Install:
A seguir instale também o pacote nuget : Microsoft.Owin.SelfHost.
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.SelfHost
Pronto. Nossa aplicação Console já contém as referências ao OWIN necessárias:
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(SelfHost_App.Startup))]
namespace SelfHost_App
{
public class Startup
{
public void Configuration(IAppBuilder app)
{
app.UseErrorPage();
app.UseWelcomePage();
}
}
}
|
Neste código adicionamos dois middlewares ao pipeline OWIN :
Agora precisamos tornar nossa aplicação Console em um servidor local.
Para isso vamos usar a classe WebApp do namespace Microsoft.Owin.Hosting que possui métodos para carregar, montar e iniciar uma aplicação web.
Inclua o código abaixo no método Main() da classe Program:
using Microsoft.Owin.Hosting;
using static System.Console;
namespace SelfHost_App
{
class Program
{
static void Main(string[] args)
{
using (WebApp.Start<Startup>("http://localhost:5000"))
{
WriteLine("Usando Self-Host em uma aplicação Console...");
ReadLine();
}
}
}
}
|
Executando a aplicação Console teremos:
Agora abra o seu navegador e digite a url definida na classe Main: http://localhost:5000
Como resultado temos a nossa primeira aplicação self-host pronta, sem nenhuma dependência do IIS e pronta para receber as aplicações web.
Na próxima parte do artigo veremos como criar uma Web API Self-hosted baseada em OWIN.
Pegue o projeto completo aqui: SelfHost_App.zip
"E os que são de
Cristo crucificaram a carne com as suas paixões e concupiscências.
Se vivemos em Espírito, andemos também em Espírito.
Não sejamos cobiçosos de vanglórias, irritando-nos uns aos outros, invejando-nos
uns aos outros."
Gálatas 5:24-26
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