2017-01-27 5 views
0

Ich versuche, das material-design-icon bower-Paket in den wwwroot-Ordner in meiner .net Core Web App zu laden. Durch einfaches Kopieren des material-design-icon-Ordners in das lib-Verzeichnis von wwwroot wird Visual Studio 2015 hängen bleiben.Visual Studio 2015 hängt beim Import der großen Ordnerstruktur

Was genau macht Visual Studio mit dieser Ordnerstruktur? Wird die Ordnerstruktur irgendwo zwischengespeichert? Gibt es irgendwelche Maßnahmen, die ich ergreifen kann, um das zu beschleunigen, was Visual Studio mit diesem Ordner macht?

Antwort

0

Ich versuchte ein paar Dinge zu versuchen, visuelle Studio-Performance zu verbessern, aber musste schließlich um die Begrenzung arbeiten. Ich habe ein paar IO-bezogene Elemente wie die Deaktivierung von Antivirenprogrammen versucht. Ich habe auch versucht, die Quellcodeverwaltung im Visual Studio und verschiedene Workarounds zu deaktivieren. Ich entschied mich schließlich dafür, den Material-Ikonen-Ordner vollständig aus der Lösung zu entfernen und ihn während des Veröffentlichungsprozesses wieder hinzuzufügen. Ich musste auch etwas "Baumschütteln" machen, so dass nur Icons, die ich tatsächlich benutzte, veröffentlicht wurden. Ich habe dies getan, indem ich alle cs- und cshtml-Dateien für die Symbolverwendung gescannt habe und dann nur diese Dateien kopiert habe. Hier ist das Skript, falls es jemand anderem hilft:

function Publish-MaterialIcons{ 
[cmdletbinding()] 
param(
    [Parameter(Position=0, Mandatory=$true)] 
    [string]$path 
) 
process{ 
    $mdPath = "D:\media\material-design-icons" 
    $publishPath = $(Join-Path $path "wwwroot\lib\material-design-icons") 
    if (!(Test-Path $publishPath)) 
    { 
     robocopy $mdPath $publishPath /e /xf *.* | Out-Null 
    } 

    "Adding $publishPath" 
    $includeFonts = ls -Recurse -Include "*.cs", "*.cshtml" |% {cat $_} |? {$_ -match "([\w_]+)\</i\>"} |% {$matches[1]} | select -Unique |% {"*$_*.png","*$_*.svg"} 
    $mdPathR = $mdPath -replace "\\", "\\" 
    $publishPathR = $publishPath -replace "\\", "\\" 
    $(ls $mdPath -Recurse -include $includeFonts) + $(ls $mdPath -Recurse -Exclude "*.png", "*.svg") |% { 
     $newPath = join-path $($(Split-Path $_.FullName) -replace $mdPathR, $publishPathR) $_.Name 
     cp $_.FullName $newPath -Force 
    } 
} 
} 
Verwandte Themen