Liens
Ctrl + Shift + P
Lancer une commande
Ctrl + Shift + I
Formater le code
Ctrl + !
Afficher le terminal
Utilisation
dotnet new console
dotnet new -l
code .
À l'ouverture de vscode, les éléments manquants sont téléchargés automatiquement (OmniSharp, .NET Core Debugger)
Settings
File → Preferences → Settings Ctrl + ,
Règlages
Setting
Value
Side Bar à droite
Side Bar: Location
right
Formatter à la sauvegarde
Editor: Format On Save Editor: Format On Paste
Font
Editor: Font Family Editor: Font Size
'Droid Sans Mono' 16
Word Wrap
Editor: Word Wrap
on
Cursor
Editor: Cursor Blinking
phase
Auto Save
Files: Auto Save
onFocusChange
Nb de fichiers dans Open Editors
Explorer - Open Editors: Visible
0
OLD
"window.zoomLevel" : 1 ,
"explorer.enableDragAndDrop" : false ,
"terminal.integrated.shell.windows" : "C:\\Program Files\\Git\\bin\\bash.exe" ,
Extensions
Dernier élément du menu de gauche ou View → Extensions
~/.vscode/extensions
%USERPROFILE%\.vscode\extensions
Communes
Nom de l'extension
Description
vscode-icons
belles icônes dans l'arborescence de fichiers
Azure Repos
Ctrl + P
> team signin
Git History
affiche l'historique des commits
Create GUID
génère un GUID et le copie dans le presse-papier
C#
Nom de l'extension
Description
C# Extensions
clique-droit → new C# classe / interface
ajouter des champs / propriétés depuis les arguments du ctor
initialiser un ctor avec les propriétés de la classe
NuGet Gallery
installation / désinstallation de package NuGet
.NET Core Test Explorer
tests unitaires
C# XML Documentation Comments
commentaires avec ///
ILSpy .NET Decompiler
décompiler des assemby - Ctrl+Shift+P → ilspy
Angular
Nom de l'extension
Description
Angular v6 Snippets
AngularDoc for Visual Studio Code
arborescence pour navigation dans le code
Auto Import
import auto dans les fichier TS
ESLint
vérification du code javascript
markdownlint
lint for MD
Markdown All in One
format MD document + racourcis-clavier
TSLint
vérification du code ts. Rules
Config ClientApp\tslint.json
TypeScript Hero
trie des imports, suppression des inutiles
ajout des imports
Move TS
Move TypeScript files and update relative imports
Auto Close Tag
HTML / XML
Auto Rename Tag
renomme la balise fermante en même temps que la balise ouvrante
Ouvrir un second dossier dans le même VScode: File → Add Folder to Workspace (lien )
Référencer un autre projet:
cd MainProject
dotnet add reference ../LibProject/LibProject.csproj
MainProject.csproj
<ItemGroup >
<ProjectReference Include ="..\LibProject\LibProject.csproj" />
</ItemGroup >
Ajouter compounds au fichier .vscode/launch.json du workspace.
Dans Debug l'entrée définit dans compounds est disponible.
afficher .vscode/launch.json
{
"version" : "0.2.0" ,
"configurations" : [
{
"name" : "BlazorServerApp" ,
"type" : "coreclr" ,
"request" : "launch" ,
"preLaunchTask" : "build BlazorServerApp" ,
"program" : "${workspaceFolder}/BlazorServerApp/bin/Debug/netcoreapp3.1/BlazorServerApp.dll" ,
"args" : [ ] ,
"cwd" : "${workspaceFolder}/BlazorServerApp" ,
"stopAtEntry" : false ,
"serverReadyAction" : {
"action" : "openExternally" ,
"pattern" : "^\\s*Now listening on:\\s+(https?://\\S+)"
} ,
"env" : {
"ASPNETCORE_ENVIRONMENT" : "Development"
} ,
"sourceFileMap" : {
"/Views" : "${workspaceFolder}/Views"
}
} ,
{
"name" : "WebApi" ,
"type" : "coreclr" ,
"request" : "launch" ,
"preLaunchTask" : "build WebApi" ,
"program" : "${workspaceFolder}/WebApi/bin/Debug/netcoreapp3.1/WebApi.dll" ,
"args" : [ ] ,
"cwd" : "${workspaceFolder}/WebApi" ,
"stopAtEntry" : false ,
"serverReadyAction" : {
"action" : "openExternally" ,
"pattern" : "^\\s*Now listening on:\\s+(https?://\\S+)"
} ,
"env" : {
"ASPNETCORE_ENVIRONMENT" : "Development"
} ,
"sourceFileMap" : {
"/Views" : "${workspaceFolder}/Views"
}
}
] ,
"compounds" : [
{
"name" : "BlazorServerApp / WebApi" ,
"configurations" : [
"BlazorServerApp" ,
"WebApi"
] ,
"preLaunchTask" : "build all"
}
]
}
Lister les build tasks: Ctrl + Shift + B ou Terminal → Run Build Task
afficher .vscode/tasks.json
{
"version" : "2.0.0" ,
"tasks" : [
{
"label" : "build" ,
"command" : "dotnet" ,
"type" : "process" ,
"args" : [
"build" ,
"${workspaceFolder}/WebApi.csproj" ,
"/property:GenerateFullPaths=true" ,
"/consoleloggerparameters:NoSummary"
] ,
"problemMatcher" : "$msCompile"
} ,
{
"label" : "publish" ,
"command" : "dotnet" ,
"type" : "process" ,
"args" : [
"publish" ,
"${workspaceFolder}/WebApi.csproj" ,
"/property:GenerateFullPaths=true" ,
"/consoleloggerparameters:NoSummary"
] ,
"problemMatcher" : "$msCompile"
} ,
{
"label" : "watch" ,
"command" : "dotnet" ,
"type" : "process" ,
"args" : [
"watch" ,
"run" ,
"${workspaceFolder}/WebApi.csproj" ,
"/property:GenerateFullPaths=true" ,
"/consoleloggerparameters:NoSummary"
] ,
"problemMatcher" : "$msCompile"
}
]
}
Appeler d'autres taches
afficher .vscode/tasks.json
{
"version" : "2.0.0" ,
"tasks" : [
{
"label" : "build all" ,
"dependsOn" : [
"build server" ,
"build client"
] ,
"group" : "build" ,
"problemMatcher" : [ ]
} ,
{
"label" : "build server" ,
"command" : "dotnet" ,
"type" : "process" ,
"args" : [
"build" ,
"${workspaceFolder}/Server/Server.csproj" ,
"/property:GenerateFullPaths=true" ,
"/consoleloggerparameters:NoSummary"
] ,
"group" : "build" ,
"problemMatcher" : "$msCompile"
} ,
{
"label" : "build client" ,
"command" : "dotnet" ,
"type" : "process" ,
"args" : [
"build" ,
"${workspaceFolder}/Client/Client.csproj" ,
"/property:GenerateFullPaths=true" ,
"/consoleloggerparameters:NoSummary"
] ,
"group" : "build" ,
"problemMatcher" : "$msCompile"
}
]
}
Quand l’application est lancée avec dotnet run , launchSettings.json est lu s’il est disponible:
le premier profil avec "commandName": "Project" est utilisé
les paramètres environmentVariables remplacent les variables d’environnement
launchSettings.json
{
"profiles" : {
"MyApp" : {
"commandName" : "Project" ,
"launchBrowser" : true ,
"applicationUrl" : "http://localhost:5000" ,
"environmentVariables" : {
"ASPNETCORE_ENVIRONMENT" : "Development"
}
}
}
}
installer l'extension mssql
nouvelle page → en bas à droite clique sur Plain Text → choisir SQL
ou ouvrir un fichier *.sql
F1 → MS SQL: Connect ou cliquer sur Disconnected en bas à droite → Create Connection Profile
Ctrl + Shift + E exécuter du code
Erreurs
cat /proc/sys/fs/inotify/max_user_watches
echo 65536 > /proc/sys/fs/inotify/max_user_watches
echo fs.inotify.max_user_watches=524288 | sudo tee /etc/sysctl.d/40-max-user-watches.conf && sudo sysctl --system
Microsoft.Common.props was not found
Microsoft.Build.Exceptions.InvalidProjectFileException: The imported project "/usr/lib/mono/xbuild/15.0/Microsoft.Common.props" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk. /opt/dotnet/sdk/2.1.105/Sdks/Microsoft.NET.Sdk/Sdk/Sdk.props
Installer MSBuild
yaourt msbuild
msbuild /ver
MSBUILD : error MSB1025: An internal failure occurred while running MSBuild.
System.InvalidOperationException: The terminfo database is invalid.
TERM=xterm dotnet build
TERM=xterm dotnet run
echo $TERM
Visual studio code is a code editor redefined, available on Windows, Linux and OS X, optimized for building web and cloud applications.
pacman -S code
yay visual-studio-code-bin
Differences between the repository and Visual Studio Code
Extension C#
Installer l'extension C# :
Bouton extension: dernier bouton du menu latéral de gauche
Rechercher C#
yaourt dotnet-sdk-2.0
File → Preferences → Settings
{
"csharp.fallbackDebuggerLinuxRuntimeId" : "ubuntu.16.10-x64"
}
yaourt icu57