Aplikacja internetowa platformy Azure z platformą .NET Core 3.0 nie działa: nie można znaleźć Microsoft.AspNetCore.App

10

Staramy się wdrożyć naszą aplikację internetową po aktualizacji do .NET Core 3.0, ale nadal pojawia się komunikat „usługa niedostępna”. Jeśli spróbujemy uruchomić dotnetz Kudu ( dotnet webapp.dll), otrzymujemy następujący błąd:

It was not possible to find any compatible framework version
The specified framework 'Microsoft.AspNetCore.App', version '3.0.0' was not found.
  - The following frameworks were found:
      2.1.10 at [D:\Program Files (x86)\dotnet\shared\Microsoft.AspNetCore.App]
      2.1.12 at [D:\Program Files (x86)\dotnet\shared\Microsoft.AspNetCore.App]
      2.1.13 at [D:\Program Files (x86)\dotnet\shared\Microsoft.AspNetCore.App]
      2.2.5 at [D:\Program Files (x86)\dotnet\shared\Microsoft.AspNetCore.App]
      2.2.6 at [D:\Program Files (x86)\dotnet\shared\Microsoft.AspNetCore.App]
      2.2.7 at [D:\Program Files (x86)\dotnet\shared\Microsoft.AspNetCore.App]

You can resolve the problem by installing the specified framework and/or SDK.

The .NET Core frameworks can be found at:
  - https://aka.ms/dotnet-download

Próbowaliśmy zainstalować .NET Core 3.0 z przewodnikiem Microsoft na platformie Azure , ale bez powodzenia.

Jakieś sugestie?

forsmyr
źródło
Kiedy mówisz, że próbowałeś zainstalować .net core 3.0, ale nie powiodło się, czy masz na myśli, że mógłeś zainstalować rozszerzenie, ale to nie rozwiązało problemu? Korzystamy z aplikacji sieci .NET Core 3.0 w kolorze lazurowym, korzystając z powyższego przewodnika. Musieliśmy zrobić to, co @David_D wspomniał poniżej (utworzyć SCD), ale tylko dla naszej pracy w sieci.
Macilquham,
Program ASP.NET Core 3.0 jest teraz obsługiwany.
Robert Lewis,

Odpowiedzi:

9

Mieliśmy dokładnie ten sam problem. Usługa Azure App Service nie obsługuje obecnie Net Core 3.

Tymczasowym obejściem jest zbudowanie samodzielnej aplikacji z Visual Studio za pomocą narzędzia do publikowania. Możesz go zmienić z Framework Dependent na Self Contained w ustawieniach publikowania. Po prostu wdróż to na platformie Azure.

Próbowaliśmy też użyć do tego naszych potoków DevOps, ale nie mogliśmy wymyślić, jak wykonać samodzielną kompilację, a ponieważ Azure ma nadzieję wkrótce wesprzeć Net Core 3, publikacja działa na razie dobrze.

Mam nadzieję, że to pomoże :)

David D.
źródło
Ta odpowiedź nie jest już poprawna, można dodać 3.0 za pomocą rozszerzeń usługi aplikacji.
Jussi Palo
Jak zauważyli inni, nie jest to już problemem, ponieważ usługa Azure App Service obsługuje teraz .Net Core 3, podobnie jak DevOps Pipelines.
David D,
Chociaż mówi, że obsługuje go w lazurowym portalu, nadal pojawia się ten błąd, gdy jest ustawiony na netcore 3.0
rzutuje
Otrzymywałem to, dopóki nie usunąłem tożsamości z mojej aplikacji testowej. Miło było wiedzieć, że mogę go uruchomić, ale tożsamość jest wymaganą funkcją tego projektu.
JCPhlux,
@JussiPalo nie działa nawet przez rozszerzenia usługi aplikacji, mam ten sam problem !!! Na razie odpowiedź Dawida jest właściwa! Niestety spędziłem jeden dzień, aby rozwiązać ten problem.
natnael88
9

Możesz śledzić najnowsze wersje programu ASP.NET Core na pulpicie nawigacyjnym usługi aplikacji

sjokkogutten
źródło
Dzięki za udostępnienie tego. Dodam do zakładek, aby zobaczyć, kiedy mogę przestać publikować jako samodzielną aplikację. Czy jest gdzieś mapa, która pokazuje, kiedy zaczną się rozwijać? Ponieważ w tej chwili KAŻDA strefa wciąż pokazuje 2.2. Myślałem, że MS będzie hostować własną platformę przynajmniej w wersji próbnej w strefie lub dwóch po wydaniu. Od miesięcy mamy wersje zapoznawcze.
WildJoe,
2
Brak mapy drogowej, ale najwyraźniej „spodziewają się, że globalne wdrożenie zakończy się do 11 października”. github.com/Azure/app-service-announcements/issues/204
sjokkogutten
Przez jakiś czas szukałem takiego linku. poważne pytanie: gdzie to w ogóle znalazłeś?
Neville Nazerane,
Znalazłem go w wątku dyskusyjnym na jednej z witryn docs.microsoft.com . Niestety nie mogę ponownie znaleźć.
sjokkogutten
1
Wygląda na to, że ASP.NET Core 3.0 jest teraz obsługiwany. Dzisiaj opublikowałem aplikację sieci Web platformy Azure przy użyciu programu ASP.NET Core bez uciekania się do „samodzielnej aplikacji” i działa.
Robert Lewis,
4

Możesz dodać platformę .net core 3.0 x86 / 64 przy użyciu rozszerzenia usługi aplikacji Azure (otwórz usługę aplikacji -> rozszerzenia). Następnie opublikuj aplikację .net core 3.0.

Rajesh Muraleedharan
źródło
Rozszerzenia są wyszarzone. Jakieś pomysły na rozdzielczość?
rzuca
Nie działa! korzystając z rozszerzeń, jedynym rozwiązaniem na razie jest odpowiedź @ David na użycie narzędzia Visual Studio Publish.
natnael88
1

Teraz Azure obsługuje platformę .NET core 3.0. Przeczytaj ten artykuł na temat publikowania bez samodzielnej aplikacji.

https://link.medium.com/U2PhGVLrJ0

Bharat
źródło
1

.NET Core 3.0 jest już dostępny

wprowadź opis zdjęcia tutaj

Anass Kartit
źródło
0

Mój problem związany był z niepoprawnym web.config. Przechodząc do samodzielnej aplikacji, musisz zmodyfikować część aspNetCore pliku web.config.

Nowy web.config

<aspNetCore processPath=".\[your].exe"
stdoutLogEnabled="false"
stdoutLogFile=".\logs\stdout"/>

Stary web.config

<aspNetCore processPath="dotnet" 
arguments=".\[your].dll" 
stdoutLogEnabled="false" 
stdoutLogFile=".\logs\stdout" />
forsmyr
źródło
0

Próbowałem wdrożyć aplikację serwera blazor .net core 3.1 do Linuksa usługi aplikacji i nie powiodło się z tym samym błędem. Więc wdrożyłem go w aplikacji sieci web Windows .net core 3.0 i działał jako samodzielny i zależny od frameworka (Windows x86) system. Najwyraźniej środowisko uruchomieniowe .net core 3.1 jest również zainstalowane na tych serwerach. Ale nie sprawdziłem.

Triamus
źródło