Udostępnij za pomocą


NETSDK1080: funkcja PackageReference do Microsoft.AspNetCore.App nie jest konieczna

NETSDK1080 ostrzega, że PackageReference element w Microsoft.AspNetCore.App pliku projektu nie jest konieczny. Pełny komunikat o błędzie jest podobny do następującego przykładu:

ostrzeżenie NETSDK1080: Wnioskowanie pakietu do Microsoft.AspNetCore.App nie jest konieczne w przypadku określania wartości docelowej platformy .NET Core 3.0 lub nowszej. Jeśli jest używany zestaw Microsoft.NET.Sdk.Web, współużytkowana struktura zostanie automatycznie przywołynięta. W przeciwnym razie element PackageReference powinien zostać zastąpiony elementem FrameworkReference.

Ten błąd występuje zwykle po uaktualnieniu projektu do platformy .NET Core 3.0 lub nowszej z wcześniejszej wersji, która wymagała PackageReference wpisów w pliku projektu.

pliki projektu ASP.NET Core

Na przykład oryginalny plik projektu może wyglądać następująco:

<Project Sdk="Microsoft.NET.Sdk.Web">

  <PropertyGroup>
    <TargetFramework>netcoreapp2.2</TargetFramework>
    <AspNetCoreHostingModel>InProcess</AspNetCoreHostingModel>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.AspNetCore.App"/>
    <PackageReference Include="Microsoft.AspNetCore.Razor.Design" Version="2.2.0" PrivateAssets="All" />
  </ItemGroup>

</Project>

Po zaktualizowaniu do platformy .NET Core 3.1 plik projektu dla tego samego projektu powinien wyglądać podobnie do następującego przykładu:

<Project Sdk="Microsoft.NET.Sdk.Web">

  <PropertyGroup>
    <TargetFramework>netcoreapp3.1</TargetFramework>
  </PropertyGroup>

</Project>

Wprowadź te zmiany, w szczególności usuń PackageReference element, aby wyeliminować ostrzeżenie. Aby uzyskać więcej informacji, zobacz Usuwanie przestarzałych odwołań do pakietu.

Projekt biblioteki klas

W projekcie biblioteki klas korzystającej z interfejsów API ASP.NET Core zastąp element PackageReference wartością FrameworkReference, jak pokazano w poniższym przykładzie:

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <TargetFramework>netcoreapp3.1</TargetFramework>
  </PropertyGroup>

  <ItemGroup>
    <FrameworkReference Include="Microsoft.AspNetCore.App" />
  </ItemGroup>

</Project>

Aby uzyskać więcej informacji, zobacz Use ASP.NET Core APIs in a class library (Używanie interfejsów API platformy ASP.NET Core w bibliotece klas).