NuGet-Warnung NU5052

Die Paket-ID 'PackageId' entspricht nicht den eingeschränkten Zeichensatz. Die ID darf nur ASCII-Buchstaben, Ziffern, Punkte ('.') und Bindestriche ('-') enthalten. Sie muss mit einem Buchstaben oder einer Ziffer beginnen und darf keine aufeinander folgenden Punkte oder Gedankenstriche enthalten.

Issue

Ihre Paket-ID enthält Zeichen, die nicht den NuGet-Paket-ID-Standards entsprechen. Gültige Paket-IDs müssen den folgenden Regeln entsprechen:

  • Verwenden Sie nur ASCII-Buchstaben, Ziffern, Punkte (.) und Striche (-).
  • Beginnen Sie mit einem Buchstaben oder einer Ziffer.
  • Sie enthalten keine aufeinander folgenden Punkte (..) oder aufeinander folgenden Striche (--).
  • Beträgt 100 Zeichen oder weniger.

Diese Warnung wird während dotnet pack oder nuget pack wenn die Paket-ID in Ihrem Projekt oder .nuspec ihrer Datei gegen eine oder mehrere dieser Regeln verstößt.

Lösung

Aktualisieren Sie die PackageId Eigenschaft in ihrer Projektdatei oder das <id> Element in der .nuspec Datei so, dass nur zulässige Zeichen verwendet werden.

Wenn ihre Projektdatei beispielsweise ein Nicht-ASCII-Zeichen in der Paket-ID enthält:

<PropertyGroup>
  <PackageId>Müller.Package</PackageId>
</PropertyGroup>

Ändern Sie sie in eine gültige ID, die nur ASCII-Zeichen verwendet:

<PropertyGroup>
  <PackageId>Mueller.Package</PackageId>
</PropertyGroup>

Wenn Sie eine .nuspec Datei verwenden, aktualisieren Sie das <id> Element:

<package>
  <metadata>
    <id>My.Valid-Package</id>
  </metadata>
</package>

Weitere Informationen zu den Paket-ID-Einschränkungen finden Sie unter NuGet-Paket-ID-Standards.