Convertendo uma pasta em aplicação no IIS via código (C#)

Somente pelo IIS é possível converter uma pasta em aplicação? Mais ou menos. Na versão 7 do IIS já dispõe de módulos que simplificam o processo de criação de site, diretório virtual, pools de aplicação e as aplicações em si. Nesse artigo mostrarei bem rápido como converter uma pasta em uma aplicação.


Crie sua aplicação e adicione, como referência, o binário Microsoft.Web.Administration.dll que fica na pasta C:\Windows\System32\inetsrv . Agora adicione o seguinte código:

using Microsoft.Web.Administration;



private void CriaEntradaIIS(string diretorio)
    {
        try
        {
            // Cria a pasta do site
            if (!Directory.Exists(diretorio))
                Directory.CreateDirectory(diretorio);


            // Servidor de Aplicação
            ServerManager sm = new ServerManager();


            // Captura o site raiz onde irá adicionar a aplicação
            Site st = sm.Sites["Default Web Site"];


            // Cria a aplicação no diretório criado apontando o caminho, ex: aplicacao
            Application app = st.Applications.Add("/aplicacao", diretorio);
            app.ApplicationPoolName = "ASP.NET v4.0";
            sm.CommitChanges();


            // Libera
            sm.Dispose();
        }
        catch (Exception erro)
        {
            return;
        }
    }


Se tentar executar dará erro... Antes dê permissão total ao grupo Serviço de Rede (Network Service) à pasta C:\Windows\System32\inetsrv\config . Agora sim irá criar. Para mais exemplos veja nesse post aqui.

3 comentários:

Anônimo disse...

Cara, como consigo fazer isso no IIS 6 vc sabe?

Thiago Marçal disse...

Essa é a forma mais simples de fazer. Para o IIS 6 é um pouquinho mais trabalhoso mas pode ser facilitado usando WMI. Dê uma olhada nesse link: http://stackoverflow.com/questions/2119511/use-wmi-to-create-iis-application-directory-with-c-sharp ou tente essa solução http://beta.blogs.microsoft.co.il/blogs/davidbi/archive/2008/12/17/how-to-create-an-application-in-iis6-using-c.aspx

Anônimo disse...

It is not my first time to visit this web site, i am browsing this website dailly and get good data from here daily.
My homepage ... dropbox iphone

Postar um comentário