限制来自 API 到 select 属性的 JSON 字符串响应

Limiting a JSON string response from an API to select attributes

目前,我正在使用 [WebMethod] 调用 API 并将响应作为 JSON 字符串。

 public string GetFloodData()
 { ...
     WebRequest requestObj = WebRequest.Create(url);
     requestObj.Method = "GET";
     requestObj.ContentType = "application/json";

     responseObj = (HttpWebResponse)requestObj.GetResponse();
     using (Stream stream = responseObj.GetResponseStream())
     {
       StreamReader sr = new StreamReader(stream);
       strresult = sr.ReadToEnd();
       sr.Close();
     }
     return strresult;
...
}

当我调用 GetFloodData() 时,我在浏览器中收到以下响应:

<string xmlns="http://tempuri.org/">
{"ListEvents": 
[{"EventID":1,"EventName":"Debby2000","State":"PR","EventType":"Tropical or 
Extratropical","Days":5,"LSTStart":"\/Date(9666432000000000)\/",
"LSTEnd":"\/Dat e(967075200000-0000)\/"}, {...}....]}

此时(在我把它解析为正式的JSON Object之前),我只想去掉我不想要的东西("Days""LSTStart",和"LSTEnd") 并保留我想要的。我将如何限制响应中返回的属性?

您可以使用 class 对其进行反序列化,并且在 class 中,您可以只写入您确实想要保留的变量。虽然,保持 Json 和 class 的结构相同。变量可以少,但结构要一样