Partilhar via


Erro NuGet NU1019

Scenario

O projeto 'MyProject' contém um 'net10.0/benchmark' do TargetFramework com caracteres proibidos. Os nomes do TargetFramework devem conter apenas caracteres ASCII e não devem conter separadores de caminho.

Issue

O teu ficheiro de projeto tem um TargetFramework valor ou TargetFrameworks que contém caracteres não permitidos. O NuGet não permite os seguintes caracteres nos nomes dos frameworks-alvo:

  • Separadores de caminho (/ ou \): Estes caracteres quebram o formato de ficheiro dos assets e são sempre proibidos.
  • Caracteres não-ASCII: Os nomes da framework alvo devem conter apenas caracteres ASCII (caracteres com valor de 127 ou menos).

Esta validação está bloqueada atrás da SdkAnalysisLevel propriedade:

  • Nível de análise SDK 10.0.300 ou posterior: Os separadores de caminho nos nomes da estrutura alvo geram um erro. Caracteres não-ASCII lançam um aviso.
  • Nível de análise do SDK 11.0.100 ou posterior: Tanto os separadores de caminho como os caracteres não-ASCII geram um erro.

Solução

Renomeie os valores do framework de destino no ficheiro do projeto para usarem apenas caracteres ASCII e removam quaisquer separadores de caminho.

Por exemplo, mudar:

<PropertyGroup>
  <TargetFramework>net10.0/benchmark</TargetFramework>
</PropertyGroup>

Para um nome válido de framework alvo:

<PropertyGroup>
  <TargetFramework>net10.0-benchmark</TargetFramework>
</PropertyGroup>