Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Эта статья относится к: ✔️ пакету SDK для .NET 6 и более поздних версий
Имя.
dotnet new - создает проект, файл конфигурации или решений на основе указанного шаблона.
Краткие сведения
dotnet new <TEMPLATE> [--dry-run] [--force] [-lang|--language {"C#"|"F#"|VB}]
[-n|--name <OUTPUT_NAME>] [-f|--framework <FRAMEWORK>] [--no-update-check]
[-o|--output <OUTPUT_DIRECTORY>] [--project <PROJECT_PATH>]
[-d|--diagnostics] [--verbosity <LEVEL>] [Template options]
dotnet new -h|--help
Description
Команда dotnet new создает проект .NET или другие артефакты на основе шаблона.
Она вызывает подсистему шаблонов, чтобы создать артефакты на диске на основе заданных параметров и шаблона.
Примечание.
Начиная с пакета SDK dotnet new для .NET 7 синтаксис изменился:
-
--list,--search--installи--uninstallварианты сталиlist,searchinstallиuninstallподкомандами. - Параметр
--update-applyсталupdateподкомандам. - Чтобы использовать
--update-check, используйтеupdateподкоманда с параметром--check-only.
Другие варианты, которые были доступны раньше, по-прежнему доступны для использования с соответствующими подкомандами.
Отдельная справка для каждого подкоманда доступна с помощью -h или --help параметра: dotnet new <subcommand> --help перечисляет все поддерживаемые параметры для подкоманда.
Кроме того, теперь доступно dotnet newзавершение вкладки. Он поддерживает завершение для установленных имен шаблонов и для параметров выбранного шаблона.
Чтобы активировать завершение вкладки для пакета SDK для .NET, см. раздел "Включить завершение вкладки".
Заполнение нажатием клавиши TAB
Начиная с пакета SDK для .NET 7.0.100, для завершения вкладки доступен dotnet new. Он поддерживает завершение для установленных имен шаблонов, а также завершения для параметров выбранного шаблона.
Чтобы активировать завершение вкладки для пакета SDK для .NET, см. раздел "Включить завершение вкладки".
Неявное восстановление
Вам не нужно выполнять команду dotnet restore, так как она выполняется неявно всеми командами, которые требуют восстановления, например dotnet new, dotnet build, dotnet run, dotnet test, dotnet publish и dotnet pack. Чтобы отключить неявное восстановление, используйте параметр --no-restore.
Команду dotnet restore по-прежнему удобно использовать в некоторых сценариях, где необходимо явное восстановление, например в сборках с использованием непрерывной интеграции в Azure DevOps Services или системах сборки, где требуется явно контролировать время восстановления.
Сведения об управлении веб-каналами NuGet см. в документации по dotnet restore.
Аргументы
TEMPLATEШаблон для создания экземпляров при вызове команды. Каждый шаблон может иметь отдельные параметры, доступные для передачи. Дополнительные сведения см. в разделе Параметры шаблона.
Вы можете выполнить
dotnet new list, чтобы просмотреть список всех установленных шаблонов.Команда
searchдолжна использоваться для поиска шаблонов в NuGet.org.Список шаблонов, которые поставляются с пакетом SDK для .NET, см. в разделе "Предустановленные шаблоны".
Параметры
--dry-runОтображает сводку того, что произойдет, если выполнить команду и это приведет к созданию шаблона.
--forceПринудительное создание содержимого, даже если при этом изменяются существующие файлы. Это необходимо, когда выбранный шаблон переопределяет существующие файлы в выходном каталоге.
-?|-h|--helpРаспечатывает справку для команды. Его можно вызвать для самой команды
dotnet newили для любого шаблона. Например,dotnet new mvc --help.-lang|--language {C#|F#|VB}Язык создаваемого шаблона. Допустимый язык зависит от шаблона (см. значения по умолчанию в разделе об аргументах). Не является допустимым для некоторых шаблонов.
Примечание.
Некоторые оболочки интерпретируют
#как специальный символ. В этих случаях заключите значение языкового параметра в кавычки. Например,dotnet new console -lang "F#".-n|--name <OUTPUT_NAME>Имя создаваемых выходных данных. Если имя не указано, используется имя текущего каталога.
-f|--framework <FRAMEWORK>Задает целевую платформу. Он ожидает моникер целевой платформы (TFM). Примеры: net6.0, net7.0-macos. Это значение будет отражено в файле проекта.
-no-update-checkОтключает проверку наличия обновлений для пакета шаблона при создании экземпляра этого шаблона. Доступно с пакета SDK для .NET 6.0.100. При создании экземпляра шаблона из пакета шаблона, который был установлен командой
dotnet new --install,dotnet newпроверяет наличие обновления для этого шаблона. Начиная с .NET 6 проверки обновлений не выполняются для стандартных шаблонов .NET. Чтобы обновить стандартные шаблоны .NET, установите версию пакета SDK для .NET с исправлениями.-o|--output <OUTPUT_DIRECTORY>Расположение, в котором размещаются созданные выходные данные. По умолчанию используется текущий каталог.
--project <PROJECT_PATH>Проект, в который добавляется шаблон. Этот проект используется для оценки контекста. Если он не указан, будет использоваться проект в текущих или родительских каталогах. Доступно с версии пакета SDK для .NET 7.0.100.
-d|--diagnosticsВключает вывод диагностических данных. Доступно с версии пакета SDK для .NET 7.0.100.
-v|--verbosity <LEVEL>Задает уровень детализации команды. Допустимые значения —
q[uiet],m[inimal],n[ormal]иdiag[nostic]. Доступно с версии пакета SDK для .NET 7.0.100.
Параметры шаблонов
Каждый шаблон может содержать дополнительные определенные параметры. Дополнительные сведения см. в статье Шаблоны .NET по умолчанию для dotnet new.
Примеры
Создайте проект консольного приложения C#:
dotnet new consoleСоздание проекта консольного приложения F# в текущем каталоге:
dotnet new console --language "F#"Создайте проект библиотеки классов .NET 2.0 Standard в указанном каталоге:
dotnet new classlib --framework "netstandard2.0" -o MyLibraryСоздайте новый проект MVC ASP.NET Core C# в текущем каталоге без проверки подлинности:
dotnet new mvc -au NoneСоздайте новый проект xUnit:
dotnet new xunitСоздайте global.json в текущем каталоге, задав пакет SDK версии 8.0.101:
dotnet new globaljson --sdk-version 8.0.101 --roll-forward latestFeatureОтобразить справку для шаблона консольного приложения C#:
dotnet new console -hОтобразить справку для шаблона консольного приложения F#:
dotnet new console --language "F#" -h