C#/c#

[ open API ] open API _ 공공 데이터 포털 xml 데이터 가져오기

code094 2021. 11. 17. 23:30

1. 원하는 데이터를 선택한다.

2. 활용신청을 클릭해서 신청하고 승인이 나면 데이터 이용이 가능하다. 

3. 샘플 코드 

4. 요청 변수를 url 에 다 넣어서 보냄 

url에 데이터 넣음 

 string url = string.Format("{0}?ServiceKey={1}&pageNo={2}&numOfRows={3}&startCreateDt={4}&endCreateDt={5}",
                targetUrl, serviceKey, pageNo, numOfRows, startCreateDt, endCreateDt);

5. xml 로 받은 데이터를 파싱한다. -> XmlDocument 클래스를 이용

XmlDocument document = new XmlDocument();
            document.LoadXml(xmlData);
            XmlNodeList xmList = document.GetElementsByTagName("item");
 foreach (XmlNode item in xmlNode)
            {
                statusList.AccDefRate = item["accDefRate"].InnerText;
                statusList.AccExamCompCount = int.Parse(item["accExamCompCnt"].InnerText);
                statusList.AccExamCount = int.Parse(item["accExamCnt"].InnerText);           
            }

6. 파싱한 데이터를 ObservableCollection 클래스 이용해서 데이터 바인딩

  ObservableCollection<StatusDTO> _statusList = new ObservableCollection<StatusDTO>();
        public ObservableCollection<StatusDTO> StatusListDTO
        {
            get
            {
                return _statusList;
            }
            set
            {
                _statusList = value;
            }
        }

7. 리스트 뷰에 보여주고 싶은 데이터만 보여준다.