Поделиться через


Определение формата проекта

NuGet работает со всеми проектами .NET. Однако формат проекта (стиль SDK или не стиль SDK) определяет некоторые инструменты и методы, которые необходимо использовать для потребления и создания NuGet пакетов. Проекты в стиле SDK используют атрибут SDK. Важно определить тип проекта, так как используемые методы и средства, используемые для использования и создания пакетов NuGet, зависят от формата проекта. Для проектов, не относящихся к пакету SDK, методы и средства также зависят от того, был ли перенесен проект в PackageReference формат.

Является ли ваш проект SDK-стилем или нет, зависит от метода, использованного для создания проекта. В следующей таблице показан формат проекта по умолчанию и связанное средство CLI для проекта при создании проекта с помощью Visual Studio 2017 и более поздних версий.

Project Формат проекта по умолчанию Средство CLI Примечания.
.NET Standard Стиль пакета SDK Пакет SDK dotnet Проекты, созданные до Visual Studio 2017, не имеют стиля SDK. Используйте nuget.exe CLI.
.NET Core Стиль пакета SDK Пакет SDK dotnet Проекты, созданные до Visual Studio 2017, не имеют стиля SDK. Используйте nuget.exe CLI.
Платформа .NET Framework Стиль без использования SDK CLI nuget.exe Проекты .NET Framework, созданные с помощью других методов, могут быть проектами в стиле ПАКЕТА SDK. Для этого используйте dotnet SDK.
Перенесенный проект .NET Стиль пакета SDK, отличный от пакета SDK Чтобы создать пакеты, используйте msbuild -t:pack для создания пакетов. Для создания пакетов msbuild -t:pack рекомендуется. В противном случае используйте пакет SDK dotnet. Перенесенные проекты не являются проектами в стиле SDK.

Проверка формата проекта

Если вы не уверены, является ли проект форматом пакета SDK или нет, найдите атрибут ПАКЕТА SDK в <Project> файле проекта (Для C#, это файл *.csproj). Если он присутствует, проект является проектом в стиле SDK.

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

  <PropertyGroup>
    <TargetFramework>netstandard2.0</TargetFramework>
    <Authors>authorname</Authors>
    <PackageId>mypackageid</PackageId>
    <Company>mycompanyname</Company>
  </PropertyGroup>

</Project>

Проверка формата проекта в Visual Studio

Если вы работаете в Visual Studio, вы можете быстро проверить формат проекта с помощью одного из следующих методов:

  • Щелкните проект правой кнопкой мыши в обозревателе решений и выберите "Изменить myprojectname.csproj".

    Этот параметр доступен только в Visual Studio 2017 для проектов, использующих атрибут стиля ПАКЕТА SDK. В противном случае используйте другой метод.

    Изменение файла проекта

    Проект в стиле ПАКЕТА SDK отображает атрибут ПАКЕТА SDK в файле проекта.

  • В меню "Проект " выберите " Выгрузить проект " (или щелкните проект правой кнопкой мыши и выберите " Выгрузить проект").

    Этот проект не будет включать атрибут ПАКЕТА SDK в файл проекта. Это не проект в стиле SDK.

    Выгрузить проект

    Затем щелкните правой кнопкой мыши выгрузочный проект и выберите "Изменить myprojectname.csproj".

См. также