10
votes

Est-il possible de syntaxe-mettre en surbrillance dans la ligne SQL?

Souvent, j'écris du SQL comme celui-ci:

string sql = @"
   -- Multi-line SQL
";


1 commentaires

Je ne peux pas imaginer qu'il y en aurait un. Vous auriez besoin d'enseigner à l'analyseur l'astuce d'identifier des chaînes aléatoires comme SQL.


3 Réponses :


0
votes

Cela ne fonctionnera pas car d'autres vous disent. Comment vs savoir quelles chaînes sont SQL et qui ne sont pas. Si vous ne voulez pas utiliser des fichiers SQL, vous pouvez créer votre propre extension de fichier comme ".sqlx" ou quelque chose, puis dans VS Properties Attribuez SQL Editor pour cette extension, donc VS sait d'appliquer de la couleur correcte de codage de couleur.

Vous pouvez faire quelque chose comme ceci: xxx

Cela peut même être meilleur car au moins vous garderez le code SQL séparé. Cependant, je recommanderais vivement à la recherche d'entité framework ou de LINQ-TO-SQL


0 commentaires

6
votes

Il existe une extension de studio visuelle pour cela (pour VS 2010 et 2012). Il a les problèmes que vous imagineriez, tels que la mise en évidence de SQ: les mots-clés des chaînes qui ne contiennent pas SQL. En fonction du type de travail que vous effectuez, vous préférez toujours cela pour ne pas avoir de surbrillance dans SQL.

http://visualsturogallery.msdn.microsoft.com/a3a662c6-28EB-4de9-9A29 -D328B1AC3F6B

Une chose que je peux recommander est de modifier les couleurs de mots-clés SQL dans Visual Studio pour être des variations sur les couleurs de chaîne normales. De cette façon, la surbrillance est utile lorsque cela est correct, mais ne gêne pas dans les cas où il met en évidence un mot dans une chaîne qui ne contient pas réellement SQL.


0 commentaires

8
votes

Jetbrains vient de publier Resharber 2016.2 qui prend en charge la mise en évidence de la syntaxe inline et IntelliSense pour une expression régulière et HTML avec des commentaires de code tels que / * Language = HTML * / . .

Je trouve qu'une caractéristique incroyable, qui (je crois) pourrait être très facilement étendue pour soutenir SQL et presque toute autre langue.

J'ai ajouté une demande de fonctionnalité ici: https://youtrack.jetbrains.com/issue / RSRP-460656

Cela ne répond pas à votre question, mais j'espère qu'elles envisageront d'ajouter une telle fonctionnalité, car Inline SQL est assez courant dans le code (c.-à-d. Travailler avec Dapper).


0 commentaires