Bir Nuget paketini Visual Studio Code'a yükleme


193

Bir Nuget Paketini Visual Studio Code'a nasıl kurabilirim? Visual Studio'da biliyorum, bunu Nuget Paket Yöneticisi konsolu üzerinden yapabiliriz, ancak VS Kodunda nasıl yapabilirim?


Bu uzantıyı denediniz mi: marketplace.visualstudio.com/… Alternatif olarak nuget'i web sitelerinden indirebilir ve konsoldan kullanabilirsiniz.
JNK

uzantının iyi bir yorumu olmadığı için konsolu tercih ederim
Gyan Parkash

Bunu yapmanın yolu, nuget.org'u kullanmak, aramak ve sadece (diğer taksit seçenekleriyle birlikte bulunan) PackageReference'ı kullanmaktır. Oldukça iyi çalışıyor ve kendinize nuget için iyi bir kullanıcı arayüzü elde edersiniz.
mslot

Yanıtlar:


226

Komut satırından veya kod düzenleyicideki Terminal pencerelerinden dotnet add package Newtonsoft.Json

Scott Hanselman'ın bu makalesine bakın


2
Bunun yalnızca yeni csproj tabanlı .Net Core SDK 1.0'da çalışacağını, ancak eski project.json tabanlı önizleme sürümlerinde çalışmadığını unutmayın.
svick

2
Bu maalesef aramayı veya otomatik tamamlamayı desteklemiyor. Yani, tam paket adı yazımını bilmek zorundasınız.
Andrew Savinykh

4
Visual Studio'da yaptığınız gibi paketleri aramak için nuget.org adresine gidebilir , ardından istediğiniz paketi yüklemek için komut satırını kullanabilirsiniz.
MikeBeaton

76

Sen kullanabilirsiniz Nuget Paket Yöneticisi uzantısı.

Yükledikten sonra, bir paket eklemek için Ctrl + Shift + P tuşlarına basın ve şunu yazın >nugetve Enter tuşuna basın:

resim açıklamasını buraya girin

Arama dizesi olarak paketinizin adının bir kısmını yazın:

resim açıklamasını buraya girin

Paketi seçin:

resim açıklamasını buraya girin

Ve son olarak paket sürümü (muhtemelen en yenisini istiyorsunuz):

resim açıklamasını buraya girin


2
Bu uzantı yeni çalışma alanları özelliğini desteklemiyor gibi görünüyor
Chris Alexander

1
Bu uzantı pazara geri döndü, sadece yükledi ve benim için iyi çalışıyor.
null başvuru

3
22 Haziran 2019: " Bu uzantı artık Market'ten yayından kaldırıldı. Kaldırmayı seçebilirsiniz. " 2 ¢.
ruffin

Yukarıda verilen bağlantı ".Net Core Project Manager (Nuget)" u gösterir - deneyin: marketplace.visualstudio.com/…
samis

29

Bunu "vscode-nuget-package-manager" kullanarak kolayca yapabilirsiniz. Pazara gidin ve bunu yükleyin. Daha sonra

1) Ctrl + P veya Ctrl + Üst Karakter + P tuşlarına basın (ve 2'yi atlayın)

2) ">" yazın

3) Sonra "Nuget Paket Yöneticisi: Paket Ekle" yi seçin

4) Paket adını girin Örn: Dapper

5) Paket adını ve sürümünü seçin

6) Bitti.


24

Uzantılar menüsünü (Ctrl + Üst Karakter + X) açın ve .NuGet Paket Yöneticisi'ni arayın.


Garip bu yönetici Microsoft.AspNetCore.Server.Kestrel bulamıyor. Aşağıdaki çözüm çalışmaları.
Aleksey Kontsevich

.Csproj dosya biçimine geçişten bu yana artık çalışmaz.
Per Lundberg

Bu uzantıyı ararken göremiyorum.
Davos

13

.Csproj dosyası örneği

  <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>

Sadece paket adını ve sürüm numarasını NuGet'ten alın ve .csproj'a ekleyin ve kaydedin. Yeni paketleri içe aktaracak geri yüklemeyi çalıştırmanız istenir.


9
Eminim bu işe yarıyor ama XML manuel düzenlemek zorunda bir utanç gibi görünüyor.
Davos

1
Doğru, ama VS Kodu ücretsiz (ve gerçekten bir editör olarak) bu yüzden şikayetçi değilim. Bunu VS'de yapmak zorunda olsaydım farklı olurdu.
Chris Cavell

1
Doğru tespit. Visual Studio'nun herhangi bir sürümü olmadan C # projelerini tamamen VSCode'da mı düzenliyorsunuz? Ya da projeyi Visual Studio'da (sln + csproj dosyaları ile) oluşturmak ve daha sonra VSCode'u editör olarak mı kullanmak istiyorsunuz? Ben sadece dotnetVSCode kullanıyorsanız ve o zaman neden bile bu proje dosyalarına ihtiyacınız olacağını tahmin ediyorum.
Davos

1
Hayır, aslında Visual Studio 2010 ve 2015 kullanıyorum. Yine de 2010'u tercih ediyorum. Tüm gerçek kodlarım Git depolarında da saklanıyor. VS Kodu benim Ubuntu sistemimle oynamak için daha fazla.
Chris Cavell

8

Nuget GalleryVisual Studio'ya benzer bir GUI sağlar. Aşağıya bakınız.

resim açıklamasını buraya girin

Nasıl kullanılır:

  1. Nuget GalleryUzantı pazarından yükleyin .
  2. Menü çubuğundan View > Command Paletteveya ⇧⌘P'den (Windows ve Linux'ta Ctrl + Shift + P) başlatın. tipNuget: Open Gallery .
  3. Yukarıdaki GUI görüntülenir. Normal Visual Studio'da olduğu gibi filtreleyebilirsiniz.
  4. .csproj fileOnay kutusunun seçili olduğundan emin olun, açılır menüden sürümü seçin ve yükle düğmesini tıklayın.

GÜNCELLEME

Yorumlarda belirtildiği gibi önceki sürümlerde, .csprojcsproj dosyasındaki bir paketin aşağıdaki gibi bir sürüm numarası eksik olduğunda onay kutusunun görünmemesi sorunu vardı .

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

Bu, uzantının daha yeni sürümlerinde düzeltildi, bu nedenle bu sorunla ilgili daha eski bir sürümünüz varsa, lütfen en son sürüme güncelleyin.


Ahh, bu ilginç. .csprojGeçerli sürümde dosya onaylama seçeneği yoktur . Belki benim sorunum budur. github.com/pcislo/vscode-nuget-gallery/issues/15
woter324

Merhaba @ woter324, onay kutusunun gösterilmemesi sorunu .csprojsürüm numaraları olmayan bazı paketler olarak tanımlandı . Sorun yorumuna bakın . Cevabımı buna dahil etmek için güncelledim.
Moses Machua

Teşekkürler! Microsoft.Windows.Compatibility paketini yükleyebilmek için ihtiyacım olan buydu! Bu Nuget Galerisi aslında .NET Core 3.1.2 ile çalışır! Şimdi Visual Studio Code diğer şeyler için .NET Core kullanırken, bir MS Access veritabanı bağlantısı açmak için OleDbConnection kullanabilirsiniz! Güzel!
John Foll

En son sürümü test ettim ve artık eksik sürüm numaraları ile ilgili bir sorun yok
Moses Machua

6
  1. NuGet Paket Yöneticisini Kur
  2. Ctrl+Shift+PWindows veya Command+Shift+PMac üzerinde
  3. NuGet Paket Yöneticisini Ara: Paket Ekle
  4. Paket adını girin, yani AutoMapper
  5. Paket ve sürümü seçin
  6. Gerekirse geri yükle

1

Project.json veya * .csproj dosyanızı değiştirin. Paketin adını ve istenen sürümü içeren bir bağımlılık girişi ekleyin.

JSON örneği:

{
   "dependencies" : {

     "AutoMapper": "5.2.0"
   }
}

1

Yukarıdaki yanıtlar iyidir, ancak aynı klasörde 1'den fazla projeniz (.csproj) varsa yetersizdir.

Öncelikle, "PackageReference" etiketini .csproj dosyasına kolayca ekleyebilirsiniz (manuel olarak, nuget paket yöneticisini kullanarak veya dotnet paket ekle komutunu kullanarak).

Ama sonra, "restore" komutunu manuel olarak çalıştırmanız gerekir, böylece hangi projeyi geri yüklemeye çalıştığınızı söyleyebilirsiniz (sadece açılan geri yükleme düğmesine tıkladıysam, hiçbir şey olmadı). Bunu çalıştırarak yapabilirsiniz:

dotnet restore Project-File-Name.csproj

Ve bu paketi yüklüyor

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.