Usando uma pasta wwwroot (estilo ASP.NET Core) no projeto ASP.NET 4.5

Eu gosto bastante da abordagem dos novos aplicativos da web asp.net (asp.net 5 \ core 1.0), com a pasta wwwroot sendo a raiz e apenas os arquivos estáticos nele sendo exibidos.

É possível, por meio de roteamento ou outra configuração, que uma pasta wwwroot em um projeto asp.net 4.5 se comporte de maneira semelhante, de modo que arquivos estáticos sejam servidos apenas a partir dele e seja a "raiz" do aplicativo da web para arquivos estáticos?

(Parte da minha motivação em perguntar isso é que eu tenho um aplicativo angular hospedado em um projeto asp.net 5 no VS2015, mas preciso movê-lo para um projeto asp.net 4.5, mas gostaria de manter a estrutura existente em disco )

Tentativa de usar OWIN

Eu tentei isso usando um projeto de aplicativo Web vazio do ASP.NET 4.5 e o OWIN. Portanto, minha estrutura de pastas possui meu aplicativo angular, com um arquivo index.html principal em uma pasta wwwroot na pasta do projeto. Não há arquivos HTML na raiz do projeto.

Adicionei OWIN através de nuget e o seguinte arquivo de inicialização:

[assembly: OwinStartup(typeof(MyApp.UI.Startup))]
namespace MyApp.UI
{
    public class Startup
    {
        public void Configuration(IAppBuilder app)
        {
            string root = AppDomain.CurrentDomain.BaseDirectory;
            var physicalFileSystem = new PhysicalFileSystem(Path.Combine(root, "wwwroot"));
            var options = new FileServerOptions
            {
                EnableDefaultFiles = true,
                FileSystem = physicalFileSystem
            };
            options.StaticFileOptions.FileSystem = physicalFileSystem;
            options.StaticFileOptions.ServeUnknownFileTypes = false;
            options.DefaultFilesOptions.DefaultFileNames = new[] {"index.html"};
            app.UseFileServer(options);
        }
    }
}

Porém, isso falha - a fonte do meu arquivo index.html é carregada quando eu executo isso, mas todos os arquivos css, js, etc que ele menciona falham com um 404. Pior ainda, se eu anexar o gulpfile.js no URL raiz, ele carrega meu arquivo gulp da raiz da pasta do projeto. Este é precisamente o tipo de coisa que estou tentando evitar.

Alguma ideia?

questionAnswers(3)

yourAnswerToTheQuestion