VS 2017 RC, F5 не работает с проектом, настроенным для целевой платформы (net462): свойство RunCommand не определено

Чтобы настроить проект asp.net-core для использования цели "framework" (net462), необходимо удалить пакет из файла csproj:

<PackageReference Include="Microsoft.NETCore.App" Version="1.1.0" />

Потому что это только для платформы "Core".

Может быть из-за этого в Visual Studio перестала работать кнопка F5 (Выполнить):

введите здесь описание изображения

Возможно ли «реинтегрировать» asp.core, нацеленный на net462, с помощью Visual Studio?

Проблема с версией инструментов:

Помимо одного вопроса, что мы должны знать о ToolsVersion от <Project Sdk="Microsoft.NET.Sdk.Web" ToolsVersion="15.0">? До этого момента я думал, что нам стоит побеспокоиться о dotnet -v (он же инструментальная версия). Как узнать, какая SDK "ToolsVersion" является последней, а какая фактически установлена ​​на компьютере разработчика?

Воспроизведение

Я не могу воспроизвести его с проектами VS по умолчанию ASP.CORE. Это происходит только с проектами Spa Services.


person Roman Pokrovskij    schedule 03.01.2017    source источник
comment
попробуйте удалить версию инструментов, не уверен, что она там нужна, и, возможно, она нацелена не на ту версию ...   -  person The Pax Bisonica    schedule 03.01.2017
comment
поэтому вместо ‹Project Sdk = Microsoft.Sdk.Web ToolsVersion = 15.0› вы хотите просто ‹Project Sdk = Microsoft.Sdk.Web›   -  person The Pax Bisonica    schedule 03.01.2017
comment
Microsoft.NETCore.App предназначен только для .NET Core. Вы должны удалить его для полных приложений .NET Framework, в любом случае это только мета-пакет для портальных приложений .NET Core.   -  person Tseng    schedule 03.01.2017
comment
@ThePaxBisonica Спасибо, но нет, это не помогает. F5 все еще не работает с той же ошибкой   -  person Roman Pokrovskij    schedule 04.01.2017
comment
@Tseng Что-то вроде этого я знаю, но встречный пакет для портативных приложений Core звучит так мистично и загадочно, что я не могу исключить, что интеграция VS осуществляется через него.   -  person Roman Pokrovskij    schedule 04.01.2017
comment
Мета-пакет означает только, что это пустой пакет, который ссылается на другие часто используемые пакеты для .NET Core, поэтому вам не нужно ссылаться на 20-30 пакетов вручную. Вы можете безопасно удалить его при нацеливании на .NET 4.x. Вы можете увидеть список пакетов, на которые он ссылается, здесь nuget.org/packages/Microsoft.NETCore .App   -  person Tseng    schedule 04.01.2017
comment
попробуйте изменить его на консольное приложение с помощью ‹OutputType› Exe ‹/OutputType›   -  person The Pax Bisonica    schedule 05.01.2017
comment
@ThePaxBisonica Спасибо за вашу помощь! но изменение типа вывода на Exe (из winexe) также не помогает (конечно, включая восстановление / сборку dotnet) ...   -  person Roman Pokrovskij    schedule 05.01.2017
comment
@ThePaxBisonica, один вопрос в сторону, что мы должны знать о ToolsVersion из ‹Project Sdk = Microsoft.NET.Sdk.Web ToolsVersion = 15.0›? До этого момента я думал, что нам стоит побеспокоиться о dotnet -v (только версия инструментария). Как узнать, какая SDK ToolsVersion является последней и какая установлена?   -  person Roman Pokrovskij    schedule 05.01.2017
comment
@ThePaxBisonica, после перезапуска VS ‹OutputType› Exe ‹/OutputType› стат работает.   -  person Roman Pokrovskij    schedule 05.01.2017
comment
отлично! где мой голос за :(   -  person The Pax Bisonica    schedule 05.01.2017
comment
@ThePaxBisonica Как я могу проголосовать за вас?   -  person Roman Pokrovskij    schedule 05.01.2017
comment
вы должны иметь возможность сделать это в комментарии   -  person The Pax Bisonica    schedule 05.01.2017
comment
@RomanPokrovskij имя или расположение файла помогли бы людям (например, мне), столкнувшимся с той же ошибкой.   -  person Stumbler    schedule 05.03.2017
comment
@Stumble - все дело в файле * .proj   -  person Roman Pokrovskij    schedule 06.03.2017


Ответы (1)


Как подсказал "The Pax Bisonica" в комментариях:

Меняется:

<OutputType>winexe</OutputType>

To:

<OutputType>Exe</OutputType>

помогает, но только после перезапуска Visual Studio (dotnet restore и dotnet build мало !!!). Вместе я удалил папки / bin и / obj, поэтому, возможно, эти шаги также необходимо включить.

О себе:

<Project Sdk="Microsoft.NET.Sdk.Web" ToolsVersion="15.0">

Насколько я понимаю, ToolsVersion разделяет свое значение "15" от "Visual Studio 15" - название предварительной версии / разработки Visual Studio 2017. Я не могу найти информацию о планах по его изменению с выпуском VS 2017. Редакции VS 2015 ToolsVersion = 14

person Roman Pokrovskij    schedule 05.01.2017
comment
Это вызывает отображение окна консоли, не так ли? - person Drew Noakes; 18.04.2017
comment
Моя проблема была в проекте сайта ASP - person Roman Pokrovskij; 19.04.2017