CssRewriteUrlTransform не вызывается на неминифицированном CSS
Я пытаюсь заменить пути к файлам внутри CSS-файлов. Я попробовал пример из этого ответа:
public class BundleConfig
{
public static void RegisterBundles(BundleCollection bundles)
{
BundleTable.EnableOptimizations = true;
IItemTransform cssRewrite = new CssRewriteUrlTransformWrapper();
bundles.Add(new StyleBundle("~/bundles/css/Components")
.Include("~/Content/Components/jquery-ui/jquery-ui.css", cssRewrite)
.Include("~/Content/Components/jquery-ui/jquery-ui.structure.css", cssRewrite)
.Include("~/Content/Components/jquery-ui/jquery-ui.theme.css", cssRewrite)
.Include("~/Content/Components/bootstrap/css/bootstrap.min.css", cssRewrite)
.Include("~/Content/Components/datatables/css/jquery.dataTables.min.css", cssRewrite)
);
}
}
public class CssRewriteUrlTransformWrapper : IItemTransform
{
public string Process(string includedVirtualPath, string input)
{
return new CssRewriteUrlTransform().Process("~" + VirtualPathUtility.ToAbsolute(includedVirtualPath), input);
}
}
По какой-то причине только последние два уменьшенных файла вызывают Process()
метод. Когда я использую их неминифицированные версии, то ни один из файлов не проходит через Process()
, Такое поведение является полной противоположностью этого решения.
Как я могу получить CssRewriteUrlTransformWrapper.Process()
называется для каждого файла?