Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Сценарий
Проект MyProject содержит targetFramework "net10.0/benchmark" с запрещенными символами. Имена TargetFramework должны содержать только символы ASCII и не должны содержать разделители путей.
Проблема
Файл проекта имеет TargetFramework или TargetFrameworks значение, содержащее запрещенные символы.
NuGet не разрешает следующие символы в именах целевых платформ:
-
Разделители путей (
/или\): эти символы нарушают формат файла ресурсов и всегда запрещены. - Символы, отличные от ASCII: имена целевой платформы должны содержать только символы ASCII (символы со значением 127 или меньше).
Эта проверка находится за свойством SdkAnalysisLevel :
- Уровень анализа пакета SDK 10.0.300 или более поздней версии: разделители путей в именах целевых платформ вызывают ошибку. Символы, отличные от ASCII, вызывают предупреждение.
- Уровень анализа пакета SDK 11.0.100 или более поздней версии: оба разделителя пути и символы, отличные от ASCII, вызывают ошибку.
Решение
Переименуйте значения целевой платформы в файле проекта, чтобы использовать только символы ASCII и удалить все разделители путей.
Например, измените:
<PropertyGroup>
<TargetFramework>net10.0/benchmark</TargetFramework>
</PropertyGroup>
Для допустимого имени целевой платформы:
<PropertyGroup>
<TargetFramework>net10.0-benchmark</TargetFramework>
</PropertyGroup>