對象我有一個簡單的類:反序列化JSON來在處理器
public class site
{
public string URL { get; set; }
}
一個HTTP處理程序中存在。目前,我正在將json發佈到此處理程序,並嘗試將其反序列化以從字符串中獲取URL。然而,我的反序列化部分存在問題。
我有一個字符串「jsonString」有格式化的,像這樣JSON:
[{"URL":"http://www.google.com/etc/"}]
這裏是我的反序列化代碼:
JavaScriptSerializer jsonSerializer = new JavaScriptSerializer();
string jsonString = String.Empty;
HttpContext.Current.Request.InputStream.Position = 0;
using (StreamReader inputStream = new StreamReader(HttpContext.Current.Request.InputStream))
{
jsonString = inputStream.ReadToEnd();
}
site currSite = new site();
currSite = jsonSerializer.Deserialize<site>(jsonString);
//set response types
HttpContext.Current.Response.ContentType = "application/json";
HttpContext.Current.Response.ContentEncoding = Encoding.UTF8;
//send response
HttpContext.Current.Response.Write(jsonSerializer.Serialize(currSite.URL));
然後我試圖使用發送響應currSite.URL,但它是失敗的。我在這裏錯過了什麼?我有理由相信它是在反序列化部分,因爲如果我發送jsonString而不是currSite.URL的響應,它將起作用。
什麼是您收到並在哪一行的錯誤? –
它是如何失敗? – Pete
你可以在反序列化之後調試並看到currSite被填充數據嗎? – iMortalitySX