NuGet figyelmeztetés NU5052

A csomagazonosító (PackageId) nem felel meg a korlátozott karaktereknek. Az azonosító csak ASCII-betűket, számjegyeket, kötőjeleket ('.') és kötőjeleket ('-' ) tartalmazhat. Betűvel vagy számjegygel kell kezdődnie, és nem tartalmazhat egymást követő kötőjeleket vagy kötőjeleket.

Issue

A csomagazonosító olyan karaktereket tartalmaz, amelyek nem felelnek meg a NuGet-csomagazonosító szabványainak. Az érvényes csomagazonosítóknak az alábbi szabályokat kell követniük:

  • Csak ASCII-betűket, számjegyeket, kötőjeleket () és kötőjeleket (.-) használjon.
  • Első lépésként írjon be egy betűt vagy számjegyet.
  • Ne tartalmazzon egymást követő kötőjeleket (..) vagy egymást követő kötőjeleket (--).
  • Legfeljebb 100 karakter hosszúságú lehet.

Ez a figyelmeztetés akkor jelenik meg dotnet packnuget pack , amikor a projekt vagy .nuspec fájl csomagazonosítója megsért egy vagy több szabályt.

Megoldás

Frissítse a PackageId projektfájl tulajdonságát vagy a <id> fájl elemét, .nuspec hogy csak az engedélyezett karaktereket használja.

Ha például a projektfájl nem ASCII-karaktert tartalmaz a csomagazonosítóban:

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

Módosítsa érvényes azonosítóra, amely csak ASCII-karaktereket használ:

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

Ha fájlt használ .nuspec , frissítse az <id> elemet:

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

A csomagazonosító-korlátozásokkal kapcsolatos további információkért lásd a NuGet csomagazonosító szabványait.