Instructions plusieurs lignes [Résolu]

floriandevelop 8 Messages postés samedi 22 janvier 2005Date d'inscription 4 janvier 2008 Dernière intervention - 12 déc. 2007 à 10:16 - Dernière réponse : cs_coq 6366 Messages postés samedi 1 juin 2002Date d'inscription 2 août 2014 Dernière intervention
- 16 déc. 2007 à 12:10
Hello,
Quel est le caractère à utiliser pour écrire des instructions sur plusieurs lignes??

merci d'avance!
Afficher la suite 

5 réponses

Répondre au sujet
SharpMao 1025 Messages postés mardi 4 février 2003Date d'inscription 7 juin 2010 Dernière intervention - 12 déc. 2007 à 10:54
+1
Utile
Hello,

En gros, tu as deux façons de le faire

Celle intuitive mais mauvaise :
string sql = "Select * "+ 
         //Si tu veux que le string lui-même soit sur plusieurs lignes, tu peux encore faire + Environement.NewLine
        "FROM tableXXX";

Et une moins intuitive mais meilleure :

StringBuilder sb = new StringBuilder();
sb.AppendLine("Select * ");
sb.AppendLine("FROM tableXXX");
//Et pour récupérer ta requête , tu fais sb.ToString()

Amicalement, SharpMao

"C'est pas parce qu'ils sont nombreux à avoir tort qu'ils ont raison!"
(Coluche / 1944-1986 / Pensées et anecdotes)
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de SharpMao
cs_coq 6366 Messages postés samedi 1 juin 2002Date d'inscription 2 août 2014 Dernière intervention - 16 déc. 2007 à 12:10
+1
Utile
Salut,

A un petit détail pret : si on parle bien de chaines litérales, l'utilisation de StringBuilder n'est pas nécessaire ici, et serait même déconseillé, car les morceaux seront assemblés à la compilation.

Pour
string sql = "Select * " + 
        "FROM tableXXX";
Le code compilé contiendra
string sql = "Select * FROM tableXXX";

Toujours en parlant de chaines litérales, si le but est d'avoir les retours à la ligne dans la chaine, tu peux utiliser cette syntaxe :
        string sql =
@"Select *
FROM tableXXX";
qui donnera
string sql = "Select * \r\nFROM tableXXX";

Seulement attention, cette syntaxe provoquera la conservation de tout caractère situé dans @"", ce qui naturellement inclus les tab/espaces d'indentation.

(Enfin, dans tous les cas le mieux est encore de ne pas mettre les requêtes dans le code.)

/*
coq
MVP Visual C#
CoqBlog
*/
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de cs_coq
SharpMao 1025 Messages postés mardi 4 février 2003Date d'inscription 7 juin 2010 Dernière intervention - 12 déc. 2007 à 10:28
0
Utile
Hello,

en c#, pas de caractère spécial, contrairement au VB.
Un retour à la ligne suffit.
Le compilateur sait qu'il s'agit de la même instruction

Amicalement, SharpMao

"C'est pas parce qu'ils sont nombreux à avoir tort qu'ils ont raison!"
(Coluche / 1944-1986 / Pensées et anecdotes)
Commenter la réponse de SharpMao
bernie666 427 Messages postés mercredi 1 octobre 2003Date d'inscription 29 janvier 2008 Dernière intervention - 12 déc. 2007 à 10:29
0
Utile
Salut, en c# le caractere qui définit ta fin de ligne est le = >   ; < =
tant que tu ne le met pas tu peux indenter ton code à ta guise ... (tout en respectant un minimum les conventions de nomages afin que cela reste lisible ;) )

++

-------------------------------------------http://quoideneufaujourdhui.spaces.live.com
Commenter la réponse de bernie666
floriandevelop 8 Messages postés samedi 22 janvier 2005Date d'inscription 4 janvier 2008 Dernière intervention - 12 déc. 2007 à 10:40
0
Utile
j'aurais du préciser:
comment "couper" une chaine de texte, typiquement une instruction SQL, sur plusieurs lignes?

merci!
Commenter la réponse de floriandevelop

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.