2013-07-15 9 views
12

Come posso farlo nell'interfaccia utente moderna C#?Come posso eseguire System.Web.Script.Serialization in C#?

var url = "http://ajax.googleapis.com/ajax/services/feed/load?q=http%3A%2F%2Fwww.digg.com%2Frss%2Findex.xml&v=1.0"; 
var wc = new WebClient(); 
var rawFeedData = wc.DownloadString(url); 

//You can use System.Web.Script.Serialization if you don't want to use Json.NET 
JavaScriptSerializer ser = new JavaScriptSerializer(); 
FeedApiResult foo = ser.Deserialize<FeedApiResult>(rawFeedData); 

//Json.NET also return you the same strong typed object  
var apiResult = JsonConvert.DeserializeObject<FeedApiResult>(rawFeedData); 

Mi dà errore un errore nel WebClient e System.Web.Script.Serialization

+1

Qual è l'errore? –

+0

1. Impossibile trovare il tipo o il nome dello spazio dei nomi "WebClient" - 2. Impossibile trovare il tipo o il nome dello spazio dei nomi "JavaScriptSerializer" – tovaz

+1

possibile duplicato di [Come fare riferimento alla serializzazione JSON in ClassLibrary?] (Http://stackoverflow.com/questions/3872734/how-to-reference-json-serialization-in-classlibrary) – RajeshKdev

risposta

48

ho trovato il modo di farlo funzionare.
Non so perché hanno fatto questo pasticcio e io non capisco nemmeno perché, ma ecco la soluzione: Fare clic destro sul progetto e aggiungere riferimento a:

System.Web.Extensions

di te puoi aggiungere il riferimento che ti serve con:

using System.Web.Script.Serialization; 

e questa volta funzionerà. (Almeno questo è quello che ho fatto su .NET framework 3.5)

+2

Anche in 4.0. –

Problemi correlati