"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > 트위터 XML을 사로 잡을 때 "예상되지 않은"오류를 고치는 방법은 무엇입니까?

트위터 XML을 사로 잡을 때 "예상되지 않은"오류를 고치는 방법은 무엇입니까?

2025-02-06에 게시되었습니다
검색:395

How to Fix 는 트위터 XML을 사로 잡을 때 오류가 예상되지 않았습니까? " />

트위터 XML 사막화 오류 :“ 는 예상되지 않았습니다.”

Twitter의 XML 데이터를 사로화 할 때 오류 메시지“ 가 예상되지 않았습니다.” 이는 일반적으로 Twitter의 XML 응답이 네임 스페이스 선언없이 루트 요소 를 사용하고 코드는 다른 루트 요소 또는 네임 스페이스를 기대합니다.

문제 :

불일치는 사막화 코드가 특정 이름 및/또는 네임 스페이스의 루트 요소를 예상 할 때 발생하지만 실제 XML 구조는 다릅니다. 이것은 예상치 못한 element.

를 거부하는 사형화제로 이어집니다.

솔루션 :

다음은이 사막화 문제를 해결하는 두 가지 방법입니다.

1. xmlroot 로 클래스를 주석에 넣습니다.

user 클래스 정의를 수정하여 xmlroot 속성을 포함합니다. 이 속성은 시리얼 라이저에 예상 루트 요소 이름과 네임 스페이스를 명시 적으로 알려줍니다.

[XmlRoot(ElementName = "user", Namespace = "")]
public partial class User
{
    // Class properties...
}

2. xmlserializer 생성자를 사용하여 xmlrootattribute

를 사용하십시오.

또는 xmlserializer 인스턴스를 만들 수 있습니다. xmlrootattribute xroot = new xmlrootattribute (); xroot.elementname = "사용자"; xmlserializer xs = new xmlserializer (typeof (user), xroot);

XmlRootAttribute xRoot = new XmlRootAttribute();
xRoot.ElementName = "user";
XmlSerializer xs = new XmlSerializer(typeof(User), xRoot);
가 예상되지 않았습니다. deserializer는 이제 XML 데이터를

user 객체에 올바르게 구문 분석합니다.

최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3