У меня API, где я получаю XML-ответ
public Task<Dictionary<long, string>> GetXMLResponse()
{
Dictionary<long, string> dic = new Dictionary<long, string>();
dic.Add(1, "a");
dic.Add(2, "b");
return dic;
}
Я вызываю этот API из Windows-приложения следующим образом
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
if (response != null)
{
using (var streamReader = new StreamReader(response.GetResponseStream()))
{
XmlSerializer obj = new XmlSerializer(typeof(List<MyClass>));
List<MyClass> class1 = (List<MyClass>)obj.Deserialize(streamReader);
}
Мой класс похож на это
public class MyClass
{
[XmlElement(ElementName = "Key")]
public long Key { get; set; }
[XmlElement(ElementName = "Value")]
public string Value { get; set; }
}
Я получаю следующую ошибку
В документе XML есть ошибка (1, 2).
Внутреннее исключение
<arrayofkeyvalueoflongstring xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> was not expected.
Ответ от API Я получаю вот так
<?xml version="1.0"?>
-<ArrayOfKeyValueOflongstring xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
-<KeyValueOflongstring>
<Key>1</Key>
<Value>a</Value>
</KeyValueOflongstring>
-<KeyValueOflongstring>
<Key>2</Key>
<Value>b</Value>
</KeyValueOflongstring>
</ArrayOfKeyValueOflongstring>
Пожалуйста, почему я получаю эту ошибку.
Заранее спасибо