2010-06-27 7 views
2

désolé pour la question stupide, mais je suis bloqué la conversion par exemple le résultat suivant d'une méthode dans Jsoncomment convertir chaîne en JSON en utilisant la bibliothèque Newton Json

public string Test(string input) 
{ 
    return "Name:"+input; 
} 

pour ressembler à ceci { « Nom » : "Mike"}

Mise à jour: Darin premier problème résolu maintenant je me sers de cette façon, mais il ne fonctionne pas

  StringBuilder sb = new StringBuilder(); 
      StringWriter sw = new StringWriter(sb); 

      using (JsonWriter jsonWriter = new JsonTextWriter(sw)) 
      { 
       jsonWriter.Formatting = Formatting.Indented; 


       jsonWriter.WritePropertyName("Name"); 
       jsonWriter.WriteValue("Mike"); 



      } 

je reçois

'{"Name":{"m_MaxCapacity":2147483647,"Capacity":16,"m_StringValue":"\\"Name\\": \\"Mike\\"","m_currentThread":0}}'; 
+0

Vous ne pouvez pas changer "d'une méthode en Json"; vous avez besoin d'un objet C#, avec des propriétés, qui seront représentées dans Json. – jvenema

Répondre

2

Vous pouvez utiliser la JavaScriptSerializer classe:

public string Test(string input) 
{ 
    var serializer = new JavaScriptSerializer(); 
    return serializer.Serialize(new { Name = input }); 
} 

Exemple d'utilisation:

string json = Test("Mike"); // json = {"Name":"Mike"} 

MISE À JOUR:

n'a pas remarqué que vous vouliez une solution en utilisant la Json.NET library En voici un:

string json = JsonConvert.SerializeObject(new { Name = input }); 
+0

homme que vous venez de faire ma journée, comment stupide j'étais, merci beaucoup – DevMania

Questions connexes