Sdílet prostřednictvím


Použití nástroje LibMan s ASP.NET Core v sadě Visual Studio

Autor: Scott Addie

Visual Studio má integrovanou podporu pro Knihovnu LibMan v projektech ASP.NET Core, včetně:

  • Podpora konfigurace a spouštění operací obnovení LibMan v sestavení
  • Položky nabídky pro aktivaci operací obnovení a čištění knihovny LibMan
  • Dialogové okno Hledání pro hledání knihoven a přidání souborů do projektu
  • Podpora úprav souboru libman.jsonmanifestu LibMan

Zobrazení nebo stažení ukázkového kódu (postup stažení)

Požadavky

Přidání souborů knihovny

Soubory knihovny je možné přidat do projektu ASP.NET Core dvěma různými způsoby:

  1. Použití dialogového okna Přidat klientskou knihovnu
  2. Ruční konfigurace položek souboru manifestu LibMan

Použití dialogového okna Přidat klientskou knihovnu

Pokud chcete nainstalovat knihovnu na straně klienta, postupujte takto:

  • V Průzkumník řešení klikněte pravým tlačítkem na složku projektu, do které se mají soubory přidat. Zvolte Přidat>klientskou knihovnu. Zobrazí se dialogové okno Přidat klientskou knihovnu :

    Dialogové okno Přidat knihovnu na straně klienta

  • V rozevíracím seznamu Poskytovatel vyberte zprostředkovatele knihovny. CDNJS je výchozí zprostředkovatel.

  • Do textového pole Knihovna zadejte název knihovny, který chcete načíst. IntelliSense poskytuje seznam knihoven začínající zadaným textem.

  • Vyberte knihovnu ze seznamu IntelliSense. Všimněte si, že název knihovny je příponou @ se symbolem a nejnovější stabilní verzí známou pro vybraného poskytovatele.

  • Rozhodněte se, které soubory chcete zahrnout:

    • Pokud chcete zahrnout všechny soubory knihovny, vyberte přepínač Zahrnout všechny soubory knihovny.
    • Pokud chcete zahrnout podmnožinu souborů knihovny, vyberte přepínač Zvolit konkrétní soubory. Při výběru přepínače je strom selektoru souborů povolen. Zaškrtněte políčka vlevo od názvů souborů, které chcete stáhnout.
  • Zadejte složku projektu pro ukládání souborů do textového pole Cílové umístění . Podle doporučení uložte každou knihovnu do samostatné složky.

    Navrhovaná složka Cílové umístění je založená na umístění, ze kterého se dialog spustil:

    • Pokud se spustí z kořenového adresáře projektu:
      • Wwwroot/lib se používá, pokud existuje wwwroot .
      • Lib se používá, pokud neexistuje wwwroot .
    • Pokud se spustí ze složky projektu, použije se odpovídající název složky.

    Návrh složky má příponu s názvem knihovny. Následující tabulka ukazuje návrhy složek při instalaci jQuery v Razor projektu Pages.

    Umístění spuštění Navrhovaná složka
    kořen projektu (pokud existuje wwwroot ) wwwroot/lib/jquery/
    kořen projektu (pokud neexistuje wwwroot ) lib/jquery/
    Složka Pages v projektu Stránky/jquery/
  • Kliknutím na tlačítko Instalovat stáhněte soubory podle konfigurace v libman.jsonsouboru .

  • Podrobnosti o instalaci najdete v informačním kanálu Správce knihovny v okně Výstup . Příklad:

    Restore operation started...
    Restoring libraries for project LibManSample
    Restoring library jquery@3.3.1... (LibManSample)
    wwwroot/lib/jquery/jquery.min.js written to destination (LibManSample)
    wwwroot/lib/jquery/jquery.js written to destination (LibManSample)
    wwwroot/lib/jquery/jquery.min.map written to destination (LibManSample)
    Restore operation completed
    1 libraries restored in 2.32 seconds
    

Ruční konfigurace položek souboru manifestu LibMan

Všechny operace LibMan v sadě Visual Studio jsou založené na obsahu manifestu LibMan kořenového projektu (libman.json). Můžete ručně upravit libman.json konfiguraci souborů knihovny pro projekt. Visual Studio obnoví všechny soubory knihovny po libman.json uložení.

Pokud chcete otevřít libman.json úpravy, existují následující možnosti:

  • Poklikejte na libman.json soubor v Průzkumník řešení.
  • Klikněte pravým tlačítkem na projekt v Průzkumník řešení a vyberte Spravovat knihovny na straně klienta.
  • V nabídce Projektu sady Visual Studio vyberte Spravovat knihovny na straně klienta.

† Pokud libman.json soubor v kořenovém adresáři projektu ještě neexistuje, vytvoří se s výchozím obsahem šablony položky.

Visual Studio nabízí bohatou podporu úprav JSON, jako je zabarvení, formátování, IntelliSense a ověřování schématu. Schéma JSON manifestu LibMan se nachází na adrese https://json.schemastore.org/libman.

S následujícím souborem manifestu načte LibMan soubory podle konfigurace definované ve libraries vlastnosti. Vysvětlení literálů objektů definovaných v následujících libraries :

  • Z poskytovatele CDNJS se načte podmnožina jQuery verze 3.3.1. Podmnožina je definována files ve vlastnosti – jquery.jsjquery.min.jsa jquery.min.map. Soubory se umístí do složky wwwroot/lib/jquery projektu.
  • Celá část bootstrap verze 4.1.3 se načte a umístí do složky wwwroot/lib/bootstrap . Vlastnost literálu provider objektu defaultProvider přepíše hodnotu vlastnosti. LibMan načte soubory Bootstrap od poskytovatele unpkg.
  • Podmnožina Lodash byla schválena řídícím orgánem v rámci organizace. Soubory lodash.js a lodash.min.js soubory se načítají z místního systému souborů v umístění C:\temp\lodash\. Soubory se zkopírují do složky wwwroot/lib/lodash projektu.
{
  "version": "1.0",
  "defaultProvider": "cdnjs",
  "libraries": [
    {
      "library": "jquery@3.3.1",
      "files": [
        "jquery.min.js",
        "jquery.js",
        "jquery.min.map"
      ],
      "destination": "wwwroot/lib/jquery/"
    },
    {
      "provider": "unpkg",
      "library": "bootstrap@4.1.3",
      "destination": "wwwroot/lib/bootstrap/"
    },
    {
      "provider": "filesystem",
      "library": "C:\\temp\\lodash\\",
      "files": [
        "lodash.js",
        "lodash.min.js"
      ],
      "destination": "wwwroot/lib/lodash/"
    }
  ]
}

Poznámka:

Knihovna LibMan podporuje pouze jednu verzi každé knihovny od každého zprostředkovatele. Soubor libman.json selže s ověřením schématu, pokud obsahuje dvě knihovny se stejným názvem knihovny pro daného zprostředkovatele.

Obnovení souborů knihovny

Pokud chcete obnovit soubory knihovny ze sady Visual Studio, musí být v kořenovém adresáři projektu platný libman.json soubor. Obnovené soubory jsou umístěny v projektu v umístění určeném pro každou knihovnu.

Soubory knihovny je možné obnovit v projektu ASP.NET Core dvěma způsoby:

  1. Obnovení souborů během sestavení
  2. Ruční obnovení souborů

Obnovení souborů během sestavení

Knihovna LibMan může obnovit definované soubory knihovny jako součást procesu sestavení. Ve výchozím nastavení je chování obnovení na sestavení zakázané.

Povolení a otestování chování obnovení při sestavení:

  • Klikněte pravým tlačítkem na libman.json Průzkumník řešení a v místní nabídce vyberte Povolit obnovit knihovny na straně klienta.

  • Po zobrazení výzvy k instalaci balíčku NuGet klikněte na tlačítko Ano. Do projektu se přidá balíček NuGet Microsoft.Web.LibraryManager.Build :

    <PackageReference Include="Microsoft.Web.LibraryManager.Build" Version="1.0.113" />
    
  • Vytvořte projekt, abyste potvrdili, že dojde k obnovení souboru LibMan. Balíček Microsoft.Web.LibraryManager.Build vloží cíl MSBuild, který spouští Knihovnu LibMan během operace sestavení projektu.

  • Zkontrolujte kanál sestavení okna Výstup protokolu aktivit LibMan:

    1>------ Build started: Project: LibManSample, Configuration: Debug Any CPU ------
    1>
    1>Restore operation started...
    1>Restoring library jquery@3.3.1...
    1>Restoring library bootstrap@4.1.3...
    1>
    1>2 libraries restored in 10.66 seconds
    1>LibManSample -> C:\LibManSample\bin\Debug\netcoreapp2.1\LibManSample.dll
    ========== Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========
    

Pokud je povolené chování obnovení při sestavení, zobrazí se v libman.json místní nabídce možnost Zakázat obnovení knihoven na straně klienta. Výběrem této možnosti odeberete odkaz na Microsoft.Web.LibraryManager.Build balíček ze souboru projektu. V důsledku toho se knihovny na straně klienta už v každém sestavení neobnoví.

Bez ohledu na nastavení obnovení na sestavení můžete ručně provést obnovení kdykoli z libman.json místní nabídky. Další informace naleznete v tématu Obnovení souborů ručně.

Ruční obnovení souborů

Ruční obnovení souborů knihovny:

  • Pro všechny projekty v řešení:
    • Klikněte pravým tlačítkem na název řešení v Průzkumník řešení.
    • Vyberte možnost Obnovit knihovny na straně klienta.
  • Pro konkrétní projekt:
    • Klikněte pravým tlačítkem myši na libman.json soubor v Průzkumník řešení.
    • Vyberte možnost Obnovit knihovny na straně klienta.

Zatímco je operace obnovení spuštěná:

  • Ikona Centrum stavu úloh (TSC) na stavovém řádku sady Visual Studio bude animované a přečte operaci obnovení. Kliknutím na ikonu se otevře popis se seznamem známých úloh na pozadí.

  • Zprávy se odešlou na stavový řádek a informační kanál Správce knihovny okna Výstup . Příklad:

    Restore operation started...
    Restoring libraries for project LibManSample
    Restoring library jquery@3.3.1... (LibManSample)
    wwwroot/lib/jquery/jquery.min.js written to destination (LibManSample)
    wwwroot/lib/jquery/jquery.js written to destination (LibManSample)
    wwwroot/lib/jquery/jquery.min.map written to destination (LibManSample)
    Restore operation completed
    1 libraries restored in 2.32 seconds
    

Odstranění souborů knihovny

Pokud chcete provést čistou operaci, která odstraní dříve obnovené soubory knihovny v sadě Visual Studio:

  • Klikněte pravým tlačítkem myši na libman.json soubor v Průzkumník řešení.
  • Vyberte možnost Vyčistit knihovny na straně klienta.

Aby se zabránilo neúmyslnému odebrání souborů mimo knihovnu, čistá operace neodstraní celé adresáře. Odebere jenom soubory, které byly součástí předchozího obnovení.

Během běhu čisté operace:

  • Ikona TSC na stavovém řádku sady Visual Studio bude animované a přečte operace klientské knihovny spuštěná. Kliknutím na ikonu se otevře popis se seznamem známých úloh na pozadí.
  • Zprávy se posílají na stavový řádek a informační kanál Správce knihovny v okně Výstup . Příklad:
Clean libraries operation started...
Clean libraries operation completed
2 libraries were successfully deleted in 1.91 secs

Čistá operace odstraní pouze soubory z projektu. Soubory knihovny zůstanou v mezipaměti pro rychlejší načítání budoucích operací obnovení. Ke správě souborů knihovny uložených v mezipaměti místního počítače použijte rozhraní příkazového řádku LibMan.

Odinstalace souborů knihovny

Odinstalace souborů knihovny:

  • Otevře záznam typu libman.json.

  • Umístěte kurzor uvnitř odpovídajícího libraries literálu objektu.

  • Klikněte na ikonu žárovky, která se zobrazí na levém okraji, a vyberte Odinstalovat <library_name>@<library_version>:

    Možnost místní nabídky odinstalovat knihovnu

Případně můžete ručně upravit a uložit manifest LibMan (libman.json). Operace obnovení se spustí při uložení souboru. Soubory knihovny, které už nejsou definovány, libman.json se z projektu odeberou.

Aktualizace verze knihovny

Kontrola aktualizované verze knihovny:

  • Otevře záznam typu libman.json.
  • Umístěte kurzor uvnitř odpovídajícího libraries literálu objektu.
  • Klikněte na ikonu žárovky, která se zobrazí na levém okraji. Najeďte myší na Kontrola aktualizací.

Knihovna LibMan vyhledá novější verzi knihovny, než je nainstalovaná verze. Může dojít k následujícím výsledkům:

  • Pokud je už nainstalovaná nejnovější verze, zobrazí se zpráva Nenašly se žádné aktualizace.

  • Pokud ještě není nainstalovaná nejnovější stabilní verze, zobrazí se.

    Možnost místní nabídky Vyhledat aktualizace

  • Pokud je k dispozici předběžná verze, než je nainstalovaná verze, zobrazí se předběžná verze.

Pokud chcete downgradovat na starší verzi knihovny, upravte libman.json soubor ručně. Při uložení souboru operace obnovení LibMan:

  • Odebere redundantní soubory z předchozí verze.
  • Přidá nové a aktualizované soubory z nové verze.

Další materiály