Форматирование файлов Razor в коде Visual Studio

У любого есть хорошее решение для форматирования файлов Razor внутри VSCode? Я попытался заставить его работать с prettify-vscode и украсить. Но в обоих случаях он не может определить файлы cshtml. Я не хочу менять свою бритву на html, поскольку я потеряю много бритвы.

Ответ 1

Вы можете представить их как файлы HTML (Файл → Настройки → Настройки) без каких-либо сторонних расширений:

{
  "editor.formatOnSave": true,
  "emmet.includeLanguages": {
    "razor": "html"
  },
  "files.associations": {
    "*.cshtml": "html"
  }
}

Обновление: v1.17.0 C# for Visual Studio Code дополнения C# for Visual Studio Code добавлен предварительный просмотр Языковой сервис Razor (cshtml) с поддержкой доработок и диагностики С#.

Ответ 2

Существует расширение, которое мы можем быстро переключать между языковыми режимами с помощью ярлыков: changeLanguageMode.change

Я использую эти ярлыки для js, html и cshtml:

 {
    "key":"ctrl+k j", 
    "command":"changeLanguageMode.change", 
    "args": {
        "languageId":"javascript"
    }
},  
{
    "key":"ctrl+k h", 
    "command":"changeLanguageMode.change", 
    "args": {
        "languageId":"html"
    }
},  
{
    "key":"ctrl+k k", 
    "command":"changeLanguageMode.change", 
    "args": {
        "languageId":"aspnetcorerazor"
    }
}

Чтобы открыть keybindings.json и добавить эти ярлыки:

откройте палитру управления с помощью клавиш CTRL + SHIFT + P и выберите " Preferences: Open Keyboard Shortcuts File сочетаний Preferences: Open Keyboard Shortcuts File.

Затем используйте Ctrl + K, Ctrl + F только для выбора формата.