웹 요청에서 xml 문서를 찾을 수 있습니다 (here).클래스에 XML 요소 구문 분석
[Serializable]
public class ExchangeRate
{
[XmlAttribute("ccy")]
public string Ccy
{ get; set; }
[XmlAttribute("base_ccy")]
public string Base_ccy
{ get; set; }
[XmlAttribute("buy")]
public string Buy
{ get; set; }
[XmlAttribute("sale")]
public string Sale
{ get; set; }
}
: 내가 수동으로 클래스 환율 검색을 만든
<exchangerate ccy="EUR" base_ccy="UAH" buy="10.81284" sale="10.81284"/>
이며, 다음과 같습니다
나는 CCY는, base_ccy, 구매 및 판매는 각각 "환율 검색"요소에서 속성의 값을 얻을 필요
이 방법으로 환율 검색 클래스의 인스턴스 (I은 전체의 XML 문서에서 분리했습니다) XML 요소 "환율 검색"을 역 직렬화하려고 :
private ExchangeRate DesereilizeXMLNode(XmlNode node)
{
XmlSerializer mySerializer = new XmlSerializer(typeof(ExchangeRate));
TextReader reader = new StringReader(node.OuterXml);
return (ExchangeRate)mySerializer.Deserialize(reader);
}
DesereilizeXMLNode 메서드를 디버깅 할 때 deserialization 메서드를 호출하는 동안 예외가 발생합니다. 예외는 XAMLParseException은 Grid 요소의 첫 번째 줄 (이상한) MainWindow.xaml이며 예외를 호출하기위한 적절한 장소가 아닌 것 같습니다.
질문은 어디에 있습니까? 내가 잘못 들었습니까? 이런 식으로 XML 요소에서 객체 인스턴스를 만들려고 할 때 잘못 되었습니까? 어쩌면 XML 전체 요소를 deserialization하지 않고 XML 요소 만 deserialize하려고 할 때 실수를 범했습니다.
xml-response 링크를 업데이트했습니다. 하지만 필자의 목표는 XML 문서 전체를 비 직렬화하는 것이 아니었다. 전체 문서에서 3 줄만 필요합니다. 그래서 필자는 필자가 필요로하는 xml 노드 만 deserialize 할 수 있다고 생각했다. 속성이있는 단일 xml-elment에서 객체를 만드는 다른 옵션이 있습니까? –
속성 값을이 방법으로 얻을 수있는 것 같습니다. 실제로 그것은 비 직렬화가 아니지만 제 경우에는 사용할 필요가 없습니다. 도와 주셔서 감사합니다! –