Bonjour,

J'aimerai savoir s'il est possible que pour un code donné, on puisse avoir un résultat différent s'il on compile sous Mono ou avec VS 2015 et .NET 4.5+ ?
En effet, j'ai fait le code suivant (VS2015, C#6 et .NET 4.5.2) :

Code csharp : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
static void Main(string[] args)
{
	Console.WriteLine(OddLadder(4));
}
 
public static string OddLadder(int n)
{
	if (n <= 0) return "";
	return Enumerable.Range(1, n).Where(i => i % 2 == 1).Aggregate("", (r, i) => r += $"{Enumerable.Range(0, i).Aggregate("", (row, j) => row += i)}\n").TrimEnd('\n');
}

Avec VS, j'ai (ce qui est le bon résultat) :
Et Mono :
A quoi celà est dû ?

Merci d'avance.

EDIT: J'ai essayé d'enlever la syntaxe C#6 avec le $ et de faire une simple concaténation et ça fonctionne sur Mono. Cependant, ma question est toujours valide.