.net Core 2.0 - pakiet został przywrócony przy użyciu .NetFramework 4.6.1 zamiast docelowego frameworka .netCore 2.0. Pakiet może nie być w pełni zgodny

103

Mam aplikację konsolową .net core 2.0. Próbuję odczytać pliki z TFS przy użyciu:

Jak pobrać plik z TFS bezpośrednio do pamięci (tj. Nie chcesz czytać z systemu plików do pamięci)?

Idę do nuget, instaluję Microsoft.TeamFoundationServer.ExtendedClienti uruchamiam to:

wprowadź opis obrazu tutaj

Pakiet „Microsoft.AspNet.WebApi.Client 5.2.2” został przywrócony przy użyciu „.NETFramework, Version = v4.6.1” zamiast struktury docelowej projektu „.NETCoreApp, Version = v2.0”. Ten pakiet może nie być w pełni zgodny z Twoim projektem.

Nawet po zniesieniu ostrzeżenia nadal otrzymuję błąd i nie mogę odwołać się do biblioteki. Jak mogę rozwiązać ten plik referencyjny?

Bardzo łatwe do odtworzenia:

  1. Nowa aplikacja konsoli .net core 2.0
  2. Skopiuj metodę z powyższego pytania
  3. Spróbuj zainstalować pakiet NuGet
BLAZORLOVER
źródło
6
Pakiet NuGet, do którego się odwołujesz, nie jest zgodny z .NET Standard (lub .NET Core), więc program Visual Studio próbuje użyć jedynej dostępnej platformy docelowej (.NET 4.6.1), która (jak wspomniano) może nie być zgodna z docelową platformą . Twoja aplikacja powinna się skompilować nawet z tym ostrzeżeniem, ale nie ma gwarancji, że taka biblioteka będzie działać w .NET Core.
Federico Dipuma
@FedericoDipuma Rozumiem to, ale projekt nawet się nie skompiluje, a odniesienia nie zostaną rozwiązane pomimo zniesienia ostrzeżenia.
BLAZORLOVER
2
Możesz wypróbować standardowy pakiet klienta , który jest obecnie w wersji zapoznawczej, ale jest w pełni zgodny z .NET Standard 1.6 (a tym samym z .NET Core 1.1+). Nie jest w pełni funkcjonalny jak klient rozszerzony, ale może ci wystarczyć. Nie wierzę, że masz teraz alternatywy.
Federico Dipuma
Sprawdź
Babak
Jak wspomniał Andy w odpowiedzi, jest to naprawione w Microsoft.AspNet.WebApi.Client v5.2.4. Obecnie wersja wstępna v5.2.4-preview1jest dostępna w NuGet i jest zgodna z .NET Standard 2.0.
Arghya C,

Odpowiedzi:

27

Pakiet nie jest obecnie w pełni zgodny z dotnetcore 2,0.

np 'Microsoft.AspNet.WebApi.Client'. może być obsługiwany w wersji (5.2.4). Aby uzyskać szczegółowe informacje, zobacz Korzystanie z nowego pakietu Microsoft.AspNet.WebApi.Client.5.2.4 .

Możesz wypróbować standardowy pakiet klienta , o którym wspomniał Federico.

Jeśli to nadal nie zadziała, jako obejście można utworzyć tylko Console App (.Net Framework)aplikację konsolową zamiast .net core 2.0.

Odwołaj się do tego wątku: Microsoft.AspNet.WebApi.Client obsługiwany w .NET Core czy nie?

Andy Li-MSFT
źródło
2

Ten konkretny pakiet nie obejmuje zestawów dla rdzenia dotnet, przynajmniej obecnie. Możesz być w stanie zbudować go samodzielnie, wprowadzając kilka poprawek w pliku projektu, ale nie mogę powiedzieć na pewno bez zagłębiania się w źródło.

Markus Kitsinger
źródło
2

Dla mnie miałem ~ 6 różnych pakietów Nuget do zaktualizowania, a kiedy wybrałem Microsoft.AspNetCore.All jako pierwszy, otrzymałem wskazany błąd.

Zacząłem od dołu i najpierw zaktualizowałem inne (EF Core, EF Design Tools itp.), A potem, kiedy pozostał tylko Microsoft.AspNetCore. Wszystko działało dobrze.

Eric
źródło
Rzeczywiście, 14.06.2018 mogłem po raz pierwszy zainstalować i skonfigurować moje środowisko, stworzyć projekt, ręcznie zbudować, a następnie debugować kod standardowy (z jedną prostą zmianą); wszystko bez zajęcia się tym konkretnym ostrzeżeniem.
azarc3