问题陈述
不知何故,我无法通过以下代码从API的“链接http://api.arbetsformedlingen.se/af/v0/platsannonser/6309046”中检索arbetstid
的值。我检索了一条错误消息
“{”对象引用未设置为对象的实例。“}”。
但是,API中的arbetstid
包含数据。我不知道为了检索数据我缺少什么部分。
其他信息
我强烈建议您查看API链接的内容,然后对该类中的数据进行比较。
完美地检索“annonsid”的值。
我无法从API更改XML结构,因为它是从公共部门创建的。这意味着我必须调整他们创造它的方式。
link“什么是NullReferenceException以及如何解决?”没有为我的问题陈述提供解决方案。
谢谢!
private static List<annons> myListAnnons = new List<annons>();
private static annons _myAnnons = new annons();
private void Button_Click_1(object sender, RoutedEventArgs e)
{
XDocument xml;
using (WebClient client = new WebClient())
{
client.Headers.Add("Accept-Language", " en-US");
client.Headers.Add("Accept", "application/xml");
client.Headers.Add("User-Agent", "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)");
xml = XDocument.Parse(client.DownloadString("http://api.arbetsformedlingen.se/af/v0/platsannonser/6309046"));
}
xml.Root.Descendants().ToList().ForEach(li =>
{
annons _myAnnons = new annons();
_myAnnons.annonsid = li.Element("annonsid").Value;
_myAnnons.annonsrubrik = li.Element("annonsrubrik").Value;
_myAnnons.annonstext = li.Element("annonstext").Value;
_myAnnons.antal_platser = li.Element("antal_platser").Value;
_myAnnons.antalplatserVisa = li.Element("antalplatserVisa").Value;
_myAnnons.arbetstid = li.Element("arbetstid").Value;
_myAnnons.arbetstidvaraktighet = li.Element("arbetstidvaraktighet").Value;
_myAnnons.besoksadress = li.Element("besoksadress").Value;
_myAnnons.egenbil = li.Element("egenbil").Value;
_myAnnons.epostadress = li.Element("epostadress").Value;
_myAnnons.hemsida = li.Element("hemsida").Value;
_myAnnons.kommunnamn = li.Element("kommunnamn").Value;
_myAnnons.land = li.Element("land").Value;
_myAnnons.logotypurl = li.Element("logotypurl").Value;
_myAnnons.loneform = li.Element("loneform").Value;
_myAnnons.lonetyp = li.Element("lonetyp").Value;
_myAnnons.namn = li.Element("namn").Value;
_myAnnons.postadress = li.Element("postadress").Value;
_myAnnons.postland = li.Element("postland").Value;
_myAnnons.postnummer = li.Element("postnummer").Value;
_myAnnons.postort = li.Element("postort").Value;
_myAnnons.publiceraddatum = li.Element("publiceraddatum").Value;
_myAnnons.referens = li.Element("referens").Value;
_myAnnons.sista_ansokningsdag = li.Element("sista_ansokningsdag").Value;
_myAnnons.telefonnummer = li.Element("telefonnummer").Value;
_myAnnons.titel = li.Element("titel").Value;
_myAnnons.varaktighet = li.Element("varaktighet").Value;
_myAnnons.webbplats = li.Element("webbplats").Value;
_myAnnons.yrkesbenamning = li.Element("yrkesbenamning").Value;
_myAnnons.yrkesid = li.Element("yrkesid").Value;
myListAnnons.Add(_myAnnons);
});
}
}
public class annons
{
public String annonsid;
public String annonsrubrik;
public String annonstext;
public String yrkesbenamning;
public String yrkesid;
public String publiceraddatum;
public String antal_platser;
public String kommunnamn;
public String antalplatserVisa;
public String varaktighet;
public String arbetstid;
public String arbetstidvaraktighet;
public String lonetyp;
public String loneform;
public String referens;
public String webbplats;
public String epostadress;
public String sista_ansokningsdag;
public String postnummer;
public String postadress;
public String postort;
public String postland;
public String land;
public String besoksadress;
public String logotypurl;
public String hemsida;
public String namn;
public String titel;
public String telefonnummer;
public String egenbil;
}