web-dev-qa-db-fra.com

Convertir une liste de chaîne au format json

Comment convertir une liste de chaîne

 List<string> keys = new List<string>() { "1-12VEXP", "1-124DH9"};

Pour json format identique à: 

[["1-12VEXP"],["1-124DH9"]] 

dans .net.

J'utilise Newtonsoft.Json.

Toute aide est la bienvenue.

9
Sachin Prasad

La sérialisation directe ne fonctionnera pas, car les éléments ne sont pas équivalents. Si vous voulez vraiment ce que vous demandez, alors vous avez besoin d'un tableau contenant des tableaux, puis sérialisez ce tableau:

Vous pouvez le faire en convertissant d'abord votre collection, puis la sérialisation JSON simple:

string[][] newKeys = keys.Select(x => new string[]{x}).ToArray();

string json = JsonConvert.SerializeObject(newKeys);
17
Joe Enos

Avec Newtonsoft.Json:

JsonConvert.SerializeObject(keys);

vous donnera JSON.

0
Amy