Modifier un élément d'un foreach dans la même boucle
Bonjour à tous
1 - J'ai récupéré une liste de dossiers dans un tableau
2 - Puis je ne veux conserver que le nom des dossiers, sans le chemin
3 - Ensuite, je veux remplacer l'ancienne valeur (avec le chemin) par la nouvelle (sans le chemin)
Pour cela, j'ai ce code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
Byte boff
String folder
String[] versionZips = Directory.GetDirectories(stringPath)
foreach (string versionZip in VersionZips)
{
// Split the directory
boff = Convert.ToByte(versionZip.LastIndexOf('\\'));
folder = versionZip.Substring(boff + 1);
versionZip = folder;
} |
L'erreur est : "Readonly local variable canot be used as an assigment target"
Je pense que l'objet versionzip dans la boucle foreach est d'office en readonly
Est-ce vrai ?
En plus, je pense que je peux faire cela bien mieux via une expression lambda ...
Pourriez-vous me mettre sur la voir svp ?
Quelles sont les solutions ?
Comment feriez-vous cela ?
je suis en C#, VS 2010, pour un service WCF... what else ?