Usuário com melhor resposta
Publicar Self Hosted Owin no Azure Web App

Pergunta
-
Ola,
Tenho um serviço Owin Self Hosted que eu criei a partir de uma Command Application, adicionando o Owin manualmente.
Agora eu preciso subir este componente no Azure Web App. Todos os tutoriais e artigos que eu procuro falam de criar uma Cloud App do inicio.
Minha maior duvida seria como inicializar a app:
WebApp.Start<Startup>(?????);
Qual seria maneira mais pratica de publicar?
Att,
Att, Tiago
Respostas
-
Olá Tiago, tudo bem? Você não conseguirá publicar em um Web App, pois este modo utiliza o IIS como servidor de aplicação, logo, não faz sentido usar Owin Self Hosted. Caso queira manter com Owin irá funcionar apenas se você publicar em um Cloud Services (Worker Role).
Em relação ao Start, se você seguiu algum tutorial, provavelmente já criou um projeto de nuvem. Basta editar a classe WorkerRole e no método OnStart configurar o endpoint:
public override bool OnStart() { ServicePointManager.DefaultConnectionLimit = 12; var endpoint = RoleEnvironment.CurrentRoleInstance.InstanceEndpoints["Endpoint1"]; string baseUri = String.Format("{0}://{1}", endpoint.Protocol, endpoint.IPEndpoint); Trace.TraceInformation(String.Format("Starting OWIN at {0}", baseUri), "Information"); _app = WebApp.Start<Startup>(new StartOptions(url: baseUri)); return base.OnStart(); }
Thiago Custodio | Software Engineer
Blog
Twitter
Faça parte da Comunidade Windows Azure Brasil no Facebook- Editado Thiago CustodioMVP terça-feira, 6 de outubro de 2015 12:07
- Sugerido como Resposta Thiago CustodioMVP terça-feira, 6 de outubro de 2015 12:07
- Marcado como Resposta TiagoR domingo, 22 de novembro de 2015 05:10
Todas as Respostas
-
Bom dia Tiago.
Muito obrigado por sua participação no Fórum.
Por gentileza, verifique as informações dos links:
http://www.asp.net/aspnet/overview/owin-and-katana/host-owin-in-an-azure-worker-role
Excelente semana.
-
Ola Cristopher,
Eu criei meu projeto baseado neste tutorial:
http://www.asp.net/web-api/overview/hosting-aspnet-web-api/use-owin-to-self-host-web-apiEste projeto poderá rodar em redes locais ou na nuvem. A ideia é que este único serviço fosse flexível para ser hospedado neste dois ambientes.
Por isto eu não posso mudar a maneira que o projeto esta, criar um novo projeto com um diferente template.
Existe uma maneira de conseguir isto?
Att, Tiago
-
Olá Tiago, tudo bem? Você não conseguirá publicar em um Web App, pois este modo utiliza o IIS como servidor de aplicação, logo, não faz sentido usar Owin Self Hosted. Caso queira manter com Owin irá funcionar apenas se você publicar em um Cloud Services (Worker Role).
Em relação ao Start, se você seguiu algum tutorial, provavelmente já criou um projeto de nuvem. Basta editar a classe WorkerRole e no método OnStart configurar o endpoint:
public override bool OnStart() { ServicePointManager.DefaultConnectionLimit = 12; var endpoint = RoleEnvironment.CurrentRoleInstance.InstanceEndpoints["Endpoint1"]; string baseUri = String.Format("{0}://{1}", endpoint.Protocol, endpoint.IPEndpoint); Trace.TraceInformation(String.Format("Starting OWIN at {0}", baseUri), "Information"); _app = WebApp.Start<Startup>(new StartOptions(url: baseUri)); return base.OnStart(); }
Thiago Custodio | Software Engineer
Blog
Twitter
Faça parte da Comunidade Windows Azure Brasil no Facebook- Editado Thiago CustodioMVP terça-feira, 6 de outubro de 2015 12:07
- Sugerido como Resposta Thiago CustodioMVP terça-feira, 6 de outubro de 2015 12:07
- Marcado como Resposta TiagoR domingo, 22 de novembro de 2015 05:10