语法code从API类检索数据不正常 [英] Syntax Code to Retrieve Data from API to Class do not working properly
本文介绍了语法code从API类检索数据不正常的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我不能检索annonsid,annonsrubic等从API值到类annons。我不知道我错过了什么零件或语法。
私有静态列表< annons> myListAnnons =新的List< annons>(); 私有静态annons _myAnnons =新annons(); 使用(Web客户端的客户端=新的WebClient())
{
client.Headers.Add(接受语言,EN-US);
client.Headers.Add(接受,应用程序/ XML);
client.Headers.Add(用户代理,Mozilla的/ 5.0(兼容; MSIE 9.0; Windows NT的6.1;三叉戟/ 5.0)); XML = XDocument.Parse(client.DownloadString(\"http://api.arbetsformedlingen.se/af/v0/platsannonser/6309046\"); }
xml.Root.Descendants(platsannons)了ToList()的ForEach(LI =过夜。;
{
annons _myAnnons =新annons();
。_myAnnons.annonsid = li.Element(annonsid)值;
。_myAnnons.annonsrubrik = li.Element(annonsrubrik)值;
。_myAnnons.annonstext = li.Element(annonstext)值;
。_myAnnons.antal_platser = li.Element(antal_platser)值;
_myAnnons.antalplatserVisa = li.Element(antalplatserVisa)值。
。_myAnnons.arbetsplatsnamn = li.Element(arbetsplatsnamn)值;
。_myAnnons.arbetstid = li.Element(arbetstid)值;
。_myAnnons.arbetstidvaraktighet = li.Element(arbetstidvaraktighet)值;
。_myAnnons.besoksadress = li.Element(besoksadress)值;
。_myAnnons.egenbil = li.Element(egenbil)值;
。_myAnnons.epostadress = li.Element(epostadress)值;
_myAnnons.hemsida = li.Element(hemsida)值。
。_myAnnons.kommunnamn = li.Element(kommunnamn)值;
。_myAnnons.land = li.Element(陆地)的价值;
。_myAnnons.logotypurl = li.Element(logotypurl)值;
。_myAnnons.loneform = li.Element(loneform)值;
。_myAnnons.lonetyp = li.Element(lonetyp)值;
_myAnnons.namn = li.Element(NAMN)值。
。_myAnnons.postadress = li.Element(postadress)值;
。_myAnnons.postland = li.Element(postland)值;
。_myAnnons.postnummer = li.Element(postnummer)值;
。_myAnnons.postort = li.Element(postort)值;
。_myAnnons.publiceraddatum = li.Element(publiceraddatum)值;
_myAnnons.referens = li.Element(referens)值。
。_myAnnons.sista_ansokningsdag = li.Element(sista_ansokningsdag)值;
。_myAnnons.telefonnummer = li.Element(telefonnummer)值;
。_myAnnons.titel = li.Element(影片名称)值;
。_myAnnons.varaktighet = li.Element(varaktighet)值;
_myAnnons.webbplats = li.Element(webbplats)值。
。_myAnnons.yrkesbenamning = li.Element(yrkesbenamning)值;
。_myAnnons.yrkesid = li.Element(yrkesid)值; myListAnnons.Add(_myAnnons);
});
公共类annons
{
公共字符串annonsid;
公共字符串annonsrubrik;
公共字符串annonstext;
公共字符串yrkesbenamning;
公共字符串yrkesid;
公共字符串publiceraddatum;
公共字符串antal_platser;
公共字符串kommunnamn;
公共字符串antalplatserVisa;
公共字符串varaktighet;
公共字符串arbetstid;
公共字符串arbetstidvaraktighet;
公共字符串lonetyp;
公共字符串loneform;
公共字符串referens;
公共字符串webbplats;
公共字符串epostadress;
公共字符串sista_ansokningsdag;
公共字符串arbetsplatsnamn;
公共字符串postnummer;
公共字符串postadress;
公共字符串postort;
公共字符串postland;
公共字符串的土地;
公共字符串besoksadress;
公共字符串logotypurl;
公共字符串hemsida;
公共字符串NAMN;
公共字符串Titel的;
公共字符串telefonnummer;
公共字符串egenbil;
}
解决方案
您code
xml.Root.Descendants(platsannons)。了ToList()...
给出了一个空列表。 platsannons
为根元素你已经有了名称。您code试图找到后裔这个名字 - 并且有失败。
,如果你更换工作原理
xml.Root.Descendants()了ToList()...
I cannot retrieve the value of annonsid, annonsrubic etc from the API into the class annons. I don't know what part or syntax I'm missing.
private static List<annons> myListAnnons = new List<annons>();
private static annons _myAnnons = new annons();
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("platsannons").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.arbetsplatsnamn = li.Element("arbetsplatsnamn").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 arbetsplatsnamn;
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;
}
解决方案
Your code
xml.Root.Descendants("platsannons").ToList()...
gives an empty list. "platsannons"
is the name of the root element you already have. Your code tries to find descendants with this name - and has to fail.
It works if you replace it with
xml.Root.Descendants().ToList()...
这篇关于语法code从API类检索数据不正常的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文