2015-05-17 4 views
1

Я в настоящее время использую модуль gulp-bundle-assets в задаче для объединения css и js в моем проекте. Каждый раз, когда я запускаю его, модуль генерирует новое имя файла, убедившись, что браузер выберет последний комплект. Однако при изменении имени файла мне нужно вручную изменить ссылки на файлы в моем html. Свойство gulp-bundle предлагает способ программного обновления представлений путем чтения json-файла.ASP.Net 5 js, css bundling

Каким будет правильный способ связывания с динамическими именами файлов в Visual Studio?

Как относительные пути обработки статического содержимого, такие как изображения, шрифты?

Спасибо!

+1

Я использую Глоток-usemin, который делает это автоматически .. Вы можете посмотреть на этой – harishr

+1

еще вас может использовать gulp-inject для ввода вновь созданных файлов в index.html – harishr

+1

Вам нужно использовать глоток? Начиная с компоновки и минимизации ASP.NET 4.5 теперь поддерживаются [из коробки] (http://www.asp.net/mvc/overview/performance/bundling-and-minification). –

ответ

1

Я являюсь автором gulp-bundle-assets. Я на самом деле создал пример этого времени назад, используя ASP.NET 5 (теперь называемый ASP.NET Core v1), который можно посмотреть здесь: https://github.com/dowjones/gulp-bundle-assets-example-aspnet-5. Вы захотите положиться на файл bundle.result.json.

ключевых элементов являются следующие:

// read bundle.result.json 
public async Task<dynamic> GetBundleResult() 
{ 
    string fileName = Path.Combine(_appEnvironment.ApplicationBasePath, "bundle.result.json"); 
    string jsonText = File.ReadAllText(fileName); 
    return await Task.FromResult(JObject.Parse(jsonText)); 
} 

А на ваш взгляд:

@inject ExampleMVC6Application.Services.BundlerService Bundler 
@{ 
    dynamic Bundles = await Bundler.GetBundleResult(); 
} 
<!DOCTYPE html> 
<html> 
    <head> 
     @Html.Raw((object)Bundles.vendor.styles) 
     @Html.Raw((object)Bundles.main.styles) 
    </head> 
    ... 
Смежные вопросы