2017-02-17 8 views
5

Я с нетерпением жду запуска приложений asp.net mvc в vscode, но кажется, что единственные страницы, которые я нашел в google, - это ядро ​​asp.net, которое не то, что я ищу. Может ли кто-нибудь помочь мне с некоторыми шагами, я установил некоторые плагины, такие как C# и msbuild. После попытки запустить его. она отображается следующее сообщение об ошибке: «Не удалось запустить внешнюю программу MSBuild икру MSBuild ENOENT»Как запустить asp.net mvc 4.5 в редакторе Visual Studio?

+0

попробовать VS Community Edition вместо (если вы не хотите платить за VS). Вероятно, спасут большую головную боль. Редактор VS-кода не предназначен для того, чтобы делать то, что вы хотите. – ADyson

+0

Да, я так думаю. Ну, спасибо вам. – hmota

ответ

7

Согласно документации VS Code, VS код не поддерживает приложения для отладки запущенных на Desktop .NET Framework. Приложение ASP.NET MVC (хотя поддерживается ядро ​​ASP.NET) не распознается VS Code. Следовательно, VS Code - это легкий инструмент для редактирования файла, он рекомендует использовать сообщество Visual Studio.

+0

О, ладно, я тебя. – hmota

7

Ошибка Failed to launch external program msbuild . spawn msbuild ENOENT происходит потому, что vscode \ task runner не может найти msbuild.

Чтобы запустить asp.net mvc 4.5 в редакторе кода Visual Studio, вам нужно будет установить инструменты msbuild (я установил версию 2017) и IIS Express.

Вы можете использовать vswhere проверить расположение MSBuild, в моем случае это C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Community\\MSBuild\\15.0\\Bin\\msbuild.exe

В vscode выполнить команду Tasks: Configure Task Runner и редактировать содержание tasks.json в соответствии файл.

{ 
    "version": "0.1.0", 
    "taskSelector": "/t:", 
    "showOutput": "silent", 
    "tasks": [ 
     { 
      "taskName": "build", 
      "args": [ 
       // Ask msbuild to generate full paths for file names. 
       "/property:GenerateFullPaths=true" 
      ], 
      "windows": { 
       // change according your msbuild location 
       "command": "C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Community\\MSBuild\\15.0\\Bin\\msbuild.exe" 
      }, 
      // Show the output window only if unrecognized errors occur. 
      "showOutput": "silent", 
      // Use the standard MS compiler pattern to detect errors, warnings and infos 
      "problemMatcher": "$msCompile" 
     }, 
     { 
      "suppressTaskName": true, 
      "taskName": "iisexpress", 
      "isShellCommand": true, 
      "windows": { 
       "command": "C:\\Program Files (x86)\\IIS Express\\iisexpress.exe" 
      }, 
      "args": [ 
       // change according your project folder and desired port 
       "/path:${workspaceRoot}\\MyProjectFolder", 
       "/port:51714" 
      ], 
      // Show the iisexpress output always. 
      "showOutput": "always" 
     } 
    ] 
} 

Вам не нужно перезапустить IIS при каждом изменении, вам просто нужно создать приложение CTRL+SHIFT+B.

Если вы не остановите IIS, используйте команду vscode Tasks: Terminate Running Task.

Ссылки:

https://stackoverflow.com/a/42719644/5270073

https://docs.microsoft.com/en-us/iis/extensions/using-iis-express/running-iis-express-from-the-command-line

10

Я создал gulpfile, что ручка сборки для меня:

  1. Он начинает IISExpress экземпляр.
  2. Обновить мой браузер на бритва смена кода.
  3. И автоматически перестроить мое приложение, когда я меняю код на C#.

Вы можете найти gulpfile на мой project's Github