gelen css dosyası hariç ama ondan bir css dosyasını dışlamak istiyorum. , her css dosyasını paket halinde belirtmeden bunu yapmak mümkün mü?asp.net mvc i böyle demetini <pre><code>bundles.Add(new StyleBundle("~/Content/themes/default/css") .IncludeDirectory("~/Content/themes/Default", "*.css")); </code></pre> <p></p> sahip paket
cevap
IgnoreList.Ignore; bundles.IgnoreList.Ignore(...)
.
public static class BundleExtentions
{
public static Bundle IncludeDirectoryWithExclusion(this StyleBundle bundle, string directoryVirtualPath, string searchPattern, params string[] toExclude)
{
var folderPath = HttpContext.Current.Server.MapPath(directoryVirtualPath);
foreach (var file in Directory.GetFiles(folderPath, searchPattern))
{
if (!String.IsNullOrEmpty(Array.Find(toExclude, s => s.ToLower() == file.ToLower())))
{
continue;
}
bundle.IncludeFile(directoryVirtualPath + "/" + file);
}
return bundle;
}
Ve sonra kullanım olmalıdır:
bundles.Add(new StyleBundle("~/Content/themes/default/css")
.IncludeDirectoryWithExclusion("~/Content/themes/Default", "*.css", "file-you-dont-want.css"));
ben şu anda bir PC de değilim yukarıdaki un- yani
Güzel bir örnek için bkz. : https://stack247.wordpress.com/2014/04/18/asp-net-mvc-4-bundles-ignore-list/ – Kildareflare
Bu yanlış bir cevaptır. Ignore'un nasıl kullanılacağını veya nasıl erişileceğini açıklamıyor. Bu, yalnızca bu zayıf özelliklerin hiçbirini açıklayan küçük bir parçacığa sahip bazı zayıf belgelerin bağlantısıdır. Wordpress sitesi hakkındaki yorum burada en yararlı şeydir. – Liam
bir uzantısı yöntemi burada ne gerek olabilir test edildi ancak çözümünüz için bir şablon vermelisiniz.
Arama paternleri eklemek ve buradaki eksiklikleri wrt'den .min'e düzeltmek için bu cevabı genişlettim: http://stackoverflow.com/a/36080620/1671558 –
Mevcut IncludeDirectory
yöntemlerini aşırı yükleyen ve alt dizinleri arama özelliğini destekleyen başka bir uzantı yöntemi. O ".min ile demetlerinin varsayılan davranışını kırar)
1:
public static class BundleExtensions
{
public static Bundle IncludeDirectory(
this Bundle bundle,
string directoryVirtualPath,
string searchPattern,
params string[] filesToExclude)
{
return IncludeDirectory(bundle, directoryVirtualPath, searchPattern, false, filesToExclude);
}
public static Bundle IncludeDirectory(
this Bundle bundle,
string directoryVirtualPath,
string searchPattern,
bool searchSubdirectories,
params string[] filesToExclude)
{
var physicalPath = HttpContext.Current.Server.MapPath(directoryVirtualPath);
return bundle.Include(Directory
.EnumerateFiles(physicalPath, searchPattern, searchSubdirectories ? SearchOption.AllDirectories : SearchOption.TopDirectoryOnly)
.Select(physicalFileName => physicalFileName.Replace(physicalPath, directoryVirtualPath).Replace(Path.DirectorySeparatorChar, Path.AltDirectorySeparatorChar))
.Where(virtualFileName => !filesToExclude.Contains(virtualFileName))
.ToArray());
}
}
Jon Malcolm tarafından iyi öneri geliştirdik (ve Satpal here bazı güncellemeler) o vardı birkaç eksikliklerini düzeltmek için ." Bu arama modellerini izin vermez dosyalar ), ancak sadece dosyaları
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Web;
using System.Web.Optimization;
public static class BundleExtentions
{
public static Bundle IncludeDirectoryWithExclusion(this Bundle bundle, string directoryVirtualPath, string searchPattern, bool includeSubDirectories, params string[] excludePatterns)
{
string folderPath = HttpContext.Current.Server.MapPath(directoryVirtualPath);
SearchOption searchOption = includeSubDirectories
? SearchOption.AllDirectories
: SearchOption.TopDirectoryOnly;
HashSet<string> excludedFiles = GetFilesToExclude(folderPath, searchOption, excludePatterns);
IEnumerable<string> resultFiles = Directory.GetFiles(folderPath, searchPattern, searchOption)
.Where(file => !excludedFiles.Contains(file) && !file.Contains(".min."));
foreach (string resultFile in resultFiles)
{
bundle.Include(directoryVirtualPath + resultFile.Replace(folderPath, "")
.Replace("\\", "/"));
}
return bundle;
}
private static HashSet<string> GetFilesToExclude(string path, SearchOption searchOptions, params string[] excludePatterns)
{
var result = new HashSet<string>();
foreach (string pattern in excludePatterns)
{
result.UnionWith(Directory.GetFiles(path, pattern, searchOptions));
}
return result;
}
}
Ben açısal ile başlayan lib klasördeki tüm kütüphaneleri dahil etmektir sahip bir örnek kullanımı hariç, ancak tüm hariç olmak
Eğer angular.min.js ve angularjs hem varsabundles.Add(new Bundle("~/bundles/scripts")
.Include("~/wwwroot/lib/angular/angular.js") // Has to be first
.IncludeDirectoryWithExclusion("~/wwwroot/lib", "*.js", true, "*.locale.*.js"));
Bu düzgün davranır ve unminified versiyonunu ekleyin: yerel komut (tek eklenecektir çünkü daha sonra ayrı bir paket içinde dile dayalı) r'deki mevcut .min.js'yi kullanarak hata ayıklama ve kullanma eLease.
Teşekkür ederiz! Bu cevap aynı zamanda paketlemeyle ilgili bir sorunu da çözdü. –
- 1. Git, <<<<<<< HEAD dosyasına
- 2. İçindeki eleman sayısı <5 in <a1 <0</ a1><T>
- 3. Java, bitshifts kullanırken, neden 1 << 32! = 1 << 31 << 1?
- 4. EJS: <% = versus <% -
- 5. <: <İş nasıl?
- 6. Toplamda 1 <= i <j <k <= n'de GLPK
- 7. Nedir? ve << demek?
- 8. "<%:" ne yapıyor?</p> <pre><code><%: Model.FirstName %> </code></pre> <p>"<%:" Ne vermez: do
- 9. css: 2 veya <code><thead></code> yılında <code><tr></code> daha varsa <tr>
- 10. <section>, <nav> ve <article>
- 11. Kanal seç <- <- Kanal
- 12. <nedir? ve <? php
- 13. <pre><code>long l = 800L int i = 4 if (i < l) { // i is less than l } </code></pre>
- 14. Akış çıkışında <yerine <neden hala <çoğum?
- 15. asp.net <%$ ... %> sözdizimi
- 16. Objective-C'de özel yönergeler oluşturmak mümkün mü?</p> <ul> <li>@interface</li> <li>@implementation</li> <li>@end</li> <li>@protocol bence</li> <li>@property</li> <li>@synthesize</li> </ul> <p>:
- 17. nedenleri Üzerinde aşağıdaki özellikleri ayarlayın ettik <code><div></code> içinde bir <code><p></code> etiketine sahip
- 18. Android Studio i</p> <pre><code>';' </code></pre> <p>Android Studio yazıyor bastığınızda ... benim klavye tuşları
- 19. Linq:</p> <p><code>Company</code>, <code>Invoice</code> ve ondalık özelliği <code>Price</code> sahiptir <code>InvoiceLine</code>: toplamlar
- 20. Şu izle ifadem tutan bana gösteriyor Şu anda bir</p> <pre><code>Expression<Func<T,bool>> </code></pre> <p>bir</p> <pre><code>Expression<Func<T,object>> </code></pre> <p>dönüştürmek çalışıyorum
- 21. XPath - tüm elemanlar alt elemanlara belge</p> <pre><code><a> <b> <c/> <d/> </b> <b> <c/> <d/> </b> </a> </code></pre> <p>Verilen
- 22. Ben <strong>OSB Eclipse</strong> 2 projeleri <strong>A</strong> ve <strong>B</strong> sahip tutulma
- 23. İçinde Gettext kullanarak PHP <<< EOF dizgisi
- 24. PureScript'te üçlü işaret (<<< `) işareti ne kadar azdır?
- 25. Thymeleaf'ın JSP etiketleri gibi bir şeyleri var mı?</p> <p><strong><em>ChildPage.jsp</em></strong>:
- 26. Ben iki işlevi <code>f</code> ve <code>g</code> sahip C++
- 27. Postgres tarafından dizilerini bulmak ve ben iki tablo</p> <p><strong>tablo</strong><br> id <br> başlık <br> yıl</p> <hr> <p><strong>tablo b</strong><br> id <br> sahip diğer tablodan
- 28. Bağlantı.Close() ve connection.Dispose() arasındaki fark nedir? <code>SQLiteDataReader</code> nesne için</p> <ul> <li><code>Close()</code></li> <li><code>Dispose()</code></li> </ul> <p>aynı:
- 29. </p> <pre><code>var tpl = ` <div> template <span>string</span> </div> ` </code></pre> <p>üretecektir
- 30. VBA, <i> "metin"</i> eşdeğerine sahip mi?
Neden css dosyasını bu dizinden dışarı taşımıyorsunuz? –
Tabii ki bunu yapabilirim ve bu dosya için başka bir paket belirtebilirim, ancak bir dizinde tüm dosyaların olması daha iyi olurdu ve eğer ihtiyacım yoksa, sadece – xurca
paketinden hariç tutuyorum Çok fazla var mı dosyalar Az sayıda dosya varsa, her css'yi ayrı ayrı kaydedebilirsiniz. –