2011-03-14 10 views
1

ASP.net 웹 페이지 응용 프로그램을 만들어야 XML 데이터를 기반으로 보고서가 표시됩니다..net의 https 요청에서 XML 데이터 가져 오기?

https://www.example.com/foo.xml에서 XML 데이터를 가져와야한다고 들었습니다. 내 ASP.net 응용 프로그램에서 데이터 서버 측을 가져 와서 해석하고 보고서를 표시하고 싶습니다.

나는 것들을 알 필요가 : 나는 .NET Framework를 어떻게해야합니까

1) 실행시에 https://www.example.com/foo.xml에서 XML 데이터를 검색 할 수 있습니다.

2) 내 프로그램에서 읽을 수 있도록 데이터 세트를 적절한 객체 유형으로 가져 오려면 어떻게해야합니까?

답변

0
WebClient wc = new WebClient(); 
byte[] data = wc.DownloadData("https://www.example.com/foo.xml"); 
XmlSerializer xs = new XmlSerializer(typeof(MyClass)); 
MemoryStream ms = new MemoryStream(data); 
MyClass mc = (MyClass) xs.Deserialize(ms); 

이 서버가 UTF8 형식으로 XML을 전송하고 MyClass가 XML로 직렬화 할 수 .NET의 XML 모델의 implementaion 있다고 가정합니다.

+0

나는이 코드를 당신이 제안한대로 정확하게 시도했다. 그러나 응용 프로그램에서 인증되지 않았다고 생각하는 문제가 있습니다. –

+0

@Rice : 앱이 당신이 인증을받지 못했다고 생각한다면, 당신은 그렇지 않다는 가능성이 있습니다. 위의 코드는 자격 증명을 설정하지 않습니다. –

+0

@Rice 인증은 무엇입니까? 질문에서 인증에 대해 아무 것도 말하지 않았습니다. – Aliostad

0

요청을 실행하고 원시 응답을 검색하려면 HttpWebRequestHttpWebResponse을 사용할 수 있어야합니다. GetResponseStream 메서드는 원시 응답 스트림을 가져 오며, 응답을 XML로 읽기 위해 XmlReader.Create을 사용하여 줄 바꿈 할 수 있습니다.

이러한 클래스는 올바른 방향으로 움직여야합니다.

+0

고마워. 답변이 수정되었습니다. –

관련 문제