Как создать новый проект с Visual Studio 2017, который будет ориентирован на .NET Core 2.1.6 SDK - PullRequest
0 голосов
/ 30 ноября 2018

Когда я пытаюсь создать новый проект (любого типа) в Visual Studio 2017, я могу использовать только основную версию 2.1 .NET Core , а из диспетчера пакетов NuGet обновить его невозможнодо последней версии 2.1.6 .NET Core .

В диспетчере пакетов NuGet есть пункт:
Неявно ссылается SDK.Чтобы обновить пакет, обновите SDK, к которому он принадлежит. Узнать больше
В разделе «Узнать больше» указано, что мне нужно установить последнюю версию SDK, что я и сделал, но в любом случае невозможно обновить существующее или создать новый проект с последней версией..

Итак, вопрос в том, как это сделать?Или я что-то пропустил?

1 Ответ

0 голосов
/ 01 декабря 2018

По умолчанию VS будет использовать последнюю версию SDK, установленную на вашем компьютере (см. Сноску о предварительном просмотре).Если вы создаете проект с таргетингом 2.1 и у вас установлены оба пакета SDK 2.1.5 и 2.1.6, он будет использовать 2.1.6.

Если у вас есть проект, созданный в 2.1.5, VSбудет использовать инструменты из 2.1.6 для сборки и запуска вашего проекта , если вы не закрепите свой инструмент в файле global.json .В большинстве случаев (особенно для 2.0+) более новый SDK подойдет, даже если вы по-прежнему ориентируетесь на более низкую версию платформы Netcore.

Если у вас есть явные ссылки на версии в вашем проекте, вам все равно придется обновить их самостоятельно, VS не делает этого сегодня.

Вы можете заметить, что в проекте ASP.NET Core 2.1 отсутствует версия для PackageRference Microsoft.AspNetCore.App (она неявная).Цитировать здесь :

Если версия не указана, SDK указывает неявную версию, то есть Microsoft.NET.Sdk.Web.

Однако существует ряд проблем GitHub ( 1 , 2 ), показывающих, что это обсуждалось и может измениться в какой-то момент.

Сноска:

Если вы устанавливаете предварительную версию .NET Core SDK, VS может использовать ее или не использовать в зависимости от этого параметра: Tools/Options checkbox named 'Use previews of the .NET Core SDK'

Byпо умолчанию, если вы используете Релизную версию VS, это будет не отмечено.Если вы используете предварительную версию VS, это будет проверено по умолчанию.Вы всегда можете включить его самостоятельно в зависимости от желаемого поведения.

...