我从web api中提取一些xml并尝试将其反序列化为Forecast对象(我使用&#34定义;将xml粘贴为类")但我得到了错误" XML文档中的错误(1,1)"。 这是我的代码:
public static Forecast getWeather(int zip)
{
string url = "http://api.weatherunlocked.com/api/forecast/us." + zip.ToString() + "?app_id={myId}&app_key={mykey}";
using (WebClient client = new WebClient())
{
string xml = client.DownloadString(url);
var reader = new StringReader(xml);
var serializer = new XmlSerializer(typeof(Forecast));
var instance = (Forecast)serializer.Deserialize(reader);
return instance;
}
}
当我将XML粘贴为类时,它表示XML中存在一些错误;我不得不拿出一些<不应该存在的人物。是否有可能,因为我实际上无法从api调用中更改XML,这些额外的字符使它成为无效的XML,因此它永远不会起作用? XML超过2000行,所以我不认为尝试通过字符串并取出所有这些字符是合理的。或者,我的代码中的其他问题是否可解决?如果其他人使用了Weather Unlocked api或者遇到同样的问题,那么一些示例代码就会很棒。