Instal paket Nuget dalam Visual Studio Code


192

Bagaimana saya bisa menginstal Paket Nuget dalam Visual Studio Code? Saya tahu di Visual Studio, kita bisa melakukan ini melalui konsol Nuget Package Manager, tetapi bagaimana saya melakukannya dalam VS Code?


Sudahkah Anda mencoba ekstensi ini: marketplace.visualstudio.com/... Atau Anda dapat mengunduh nuget dari situs web mereka dan menggunakannya dari konsol.
JNK

Saya lebih suka konsol karena ekstensi tidak memiliki ulasan yang baik
Gyan Parkash

Cara saya melakukannya, adalah dengan menggunakan nuget.org, mencari, dan hanya menggunakan PackageReference (terletak dengan opsi angsuran lainnya). Bekerja cukup baik, dan Anda mendapatkan UI yang bagus untuk nuget itu sendiri.
mslot

Jawaban:


225

Dari baris perintah atau jendela Terminal di vs editor kode dotnet add package Newtonsoft.Json

Lihat artikel ini oleh Scott Hanselman


2
Perhatikan bahwa ini hanya akan berfungsi pada .Net Core SDK 1.0 berbasis csproj baru, tetapi tidak pada versi pratinjau berbasis project.json yang lama.
svick

2
Sayangnya itu tidak mendukung pencarian atau pelengkapan otomatis. Artinya, Anda harus tahu ejaan nama paket yang tepat.
Andrew Savinykh

4
Anda bisa pergi ke nuget.org untuk mencari paket seperti yang mungkin Anda lakukan di Visual Studio, kemudian gunakan baris perintah untuk menginstal paket yang Anda inginkan.
MikeBeaton

76

Anda dapat menggunakan ekstensi NuGet Package Manager .

Setelah Anda menginstalnya, untuk menambahkan paket, tekan Ctrl + Shift + P, dan ketik >nugetdan tekan Enter:

masukkan deskripsi gambar di sini

Ketikkan bagian dari nama paket Anda sebagai string pencarian:

masukkan deskripsi gambar di sini

Pilih paket:

masukkan deskripsi gambar di sini

Dan akhirnya versi paket (Anda mungkin menginginkan yang terbaru):

masukkan deskripsi gambar di sini


2
Ekstensi ini tampaknya tidak mendukung fitur ruang kerja baru
Chris Alexander

1
Ekstensi ini tampaknya kembali ke pasaran, cukup instal dan berfungsi dengan baik untuk saya.
Referensi Null

3
22 Juni 2019: " Ekstensi ini sekarang tidak diterbitkan dari Marketplace. Anda dapat memilih untuk mencopotnya. " 2 ¢.
ruffin

Tautan yang disediakan di atas menunjuk ke ".Net Core Project Manager (Nuget)" - coba: marketplace.visualstudio.com/...
samis

29

Anda dapat melakukannya dengan mudah menggunakan "vscode-nuget-package-manager". Pergi ke pasar dan instal ini. Setelah itu

1) Tekan Ctrl + P atau Ctrl + Shift + P (dan lewati 2)

2) Ketik ">"

3) Kemudian pilih "Nuget Package Manager: Add Package"

4) Masukkan nama paket, Ex: Dapper

5) pilih nama dan versi paket

6) Dilakukan.


24

Buka menu ekstensi (Ctrl + Shift + X), dan cari .NuGet Package Manager.


Aneh manajer ini tidak dapat menemukan Microsoft.AspNetCore.Server.Kestrel. Solusi di bawah ini berfungsi.
Aleksey Kontsevich

Tidak berfungsi lagi sejak migrasi ke format file .csproj.
Per Lundberg

Saya tidak dapat melihat ekstensi itu saat mencarinya.
Davos

13

Contoh untuk file .csproj

  <ItemGroup>
    <PackageReference Include="Microsoft.EntityFrameworkCore" Version="1.1.2" />
    <PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="1.1.2" />
    <PackageReference Include="MySql.Data.EntityFrameworkCore" Version="7.0.7-m61" />
  </ItemGroup>

Cukup dapatkan nama paket dan nomor versi dari NuGet dan tambahkan ke .csproj kemudian simpan. Anda akan diminta untuk menjalankan pengembalian yang akan mengimpor paket baru.


9
Saya yakin ini berfungsi tetapi harus mengedit XML secara manual tampaknya memalukan.
Davos

1
Benar, tetapi VS Code gratis (dan benar-benar dimaksudkan sebagai editor) jadi saya tidak mengeluh. Akan berbeda jika saya harus melakukan ini di VS.
Chris Cavell

1
Titik adil. Jadi, apakah Anda mengedit proyek C # sepenuhnya dalam VSCode tanpa versi Visual Studio diinstal? Atau membuat proyek di Visual Studio (dengan file sln + csproj) dan kemudian hanya menggunakan VSCode sebagai editor? Saya menduga jika Anda hanya menggunakan dotnetdan VSCode lalu mengapa Anda bahkan perlu file proyek tersebut.
Davos

1
Tidak, saya sebenarnya menggunakan Visual Studio 2010 & 2015. Lebih suka 2010. Semua pengkodean asli saya juga disimpan di repositori Git. VS Code lebih untuk dimainkan di sistem Ubuntu saya.
Chris Cavell

8

Nuget Gallerymenyediakan GUI yang mirip dengan Visual Studio lengkap. Lihat di bawah.

masukkan deskripsi gambar di sini

Cara Penggunaan:

  1. Instal Nuget Gallerydari pasar ekstensi.
  2. Luncurkan dari bilah menu View > Command Paletteatau ⇧⌘P (Ctrl + Shift + P di Windows dan Linux). Jenis Nuget: Open Gallery.
  3. GUI di atas ditampilkan. Anda dapat memfilter seperti di Visual Studio biasa.
  4. Pastikan .csproj filekotak centang dipilih, pilih versi dari dropdown, dan klik tombol install.

MEMPERBARUI

Versi sebelumnya, seperti yang tercantum dalam komentar, memiliki masalah di mana .csprojkotak centang tidak terlihat ketika paket dalam file csproj kehilangan nomor versi seperti di bawah ini.

<PackageReference Include="Microsoft.AspNetCore.App" />

Ini telah diperbaiki di versi ekstensi yang lebih baru sehingga jika Anda memiliki versi yang lebih lama dengan masalah ini, harap perbarui ke versi terbaru.


Ahh, ini menarik. Tidak ada .csprojopsi centang file dalam versi saat ini. Mungkin itulah masalah saya. github.com/pcislo/vscode-nuget-gallery/issues/15
woter324

Hai @ woter324, masalah kotak centang tidak ditampilkan diidentifikasi sebagai beberapa paket dalam .csprojtidak memiliki nomor versi. Lihat komentar masalah . Saya telah memperbarui jawaban saya untuk memasukkan itu.
Moses Machua

Terima kasih! Itulah yang saya butuhkan untuk dapat menginstal paket Microsoft.Windows.Compatibility! Galeri Nuget ini sebenarnya berfungsi dengan .NET Core 3.1.2! Jadi sekarang saya dapat menggunakan OleDbConnection untuk membuka koneksi ke MS Access Database, saat menggunakan .NET Core untuk hal-hal lain dalam Visual Studio Code! Keren!
John Foll

Saya telah menguji versi terbaru dan tidak lagi memiliki masalah dengan nomor versi yang hilang
Moses Machua

6
  1. Instal Manajer Paket NuGet
  2. Ctrl+Shift+Pdi Windows atau Command+Shift+Pdi Mac
  3. Cari Manajer Paket NuGet: Tambahkan Paket
  4. Masukkan nama paket yaitu AutoMapper
  5. Pilih paket & versi
  6. Kembalikan jika perlu

1

Ubah file project.json atau * .csproj Anda. Tambahkan entri ketergantungan dengan nama paket dan versi yang diinginkan.

Contoh JSON:

{
   "dependencies" : {

     "AutoMapper": "5.2.0"
   }
}

1

Jawaban di atas baik, tetapi tidak cukup jika Anda memiliki lebih dari 1 proyek (.csproj) di folder yang sama.

Pertama, Anda dengan mudah menambahkan tag "PackageReference" ke file .csproj (baik secara manual, dengan menggunakan manajer paket nuget atau dengan menggunakan perintah dotnet add package).

Tetapi kemudian, Anda perlu menjalankan perintah "restore" secara manual sehingga Anda dapat menentukan proyek mana yang ingin Anda pulihkan (jika saya hanya mengklik tombol restore yang muncul, tidak ada yang terjadi). Anda dapat melakukannya dengan menjalankan:

dotnet restore Project-File-Name.csproj

Dan itu menginstal paket

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.