Использование папки wwwroot (основной стиль ASP.NET) в проекте ASP.NET 4.5
Мне очень нравится подход новых веб-приложений asp.net (asp.net 5 \ core 1.0) с папкой wwwroot, являющейся корневым каталогом, и обрабатываются только статические файлы.
Возможно ли с помощью маршрутизации или другой конфигурации, что папка wwwroot в проекте asp.net 4.5 ведет себя аналогичным образом, так что статические файлы обслуживаются только из нее, и это «корень» веб-приложения для статических файлов?
(Отчасти я хочу спросить, что у меня есть угловое приложение, размещенное в проекте asp.net 5 в VS2015, но мне нужно перенести это в проект asp.net 4.5, но я хотел бы сохранить существующую структуру на диске )
Попытка использования OWINЯ попытался сделать это с помощью пустого проекта веб-приложения ASP.NET 4.5 и OWIN. Итак, в моей структуре папок есть мое угловое приложение с основным файлом index.html в папке wwwroot в папке проекта. В корне проекта нет HTML-файлов.
Я добавил OWIN через nuget и следующий файл запуска:
[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);
}
}
}
Однако это не удается - источник моего файла index.html загружается при запуске, но все файлы css, js и т. Д., На которые он ссылается, не работают с 404. Еще хуже, если я добавляю gulpfile.js в корневой URL-адрес загружает мой файл gulp из корня папки проекта. Это именно то, чего я пытаюсь избежать.
Есть идеи?