String[] S1 = miscParams.Split(";".ToCharArray(), StringSplitOptions.RemoveEmptyEntries); for (int i = 0; i < S1.Count(); ) { miscparams.Add(S1[i], S1[i + 1]); i += 2; }
Пожалуйста, на самом деле не делайте этого в реальной программе:
var miscparams = S1.Where((k, i) => i%2 == 0) .Zip(S1.Where((v, i) => i%2 == 1), (k, v) => new[] {k, v}) .ToDictionary(e => e[0], e => e[1]);