В envelope оказывается список без транзакций. Как поменять декларацию транзакции или использование XmlSerializer чтобы вот такой xml превращался в список? XML не менять — такой приходит извне.
var newXml =@"
<reestr>
<paymentTransaction xmlns='http://privilege.sbibank.ru/'>
<tranId>ABCDEF</tranId>
<tranSum>262</tranSum>
<tranDate>2016-12-03T11:43:40.907+03:00</tranDate>
</paymentTransaction>
<paymentTransaction xmlns='http://privilege.sbibank.ru/'>
<tranId>ZXCV</tranId>
<tranSum>234.1</tranSum>
<tranDate>2016-12-13T11:43:40.907+03:00</tranDate>
</paymentTransaction>
<paymentTransaction xmlns='http://privilege.sbibank.ru/'>
<tranId>BNMF</tranId>
<tranSum>7262</tranSum>
<tranDate>2016-12-23T11:43:40.907+03:00</tranDate>
</paymentTransaction>
</reestr>
";
[XmlType("paymentTransaction")]
public class PmtTransaction {
[XmlElement("tranId")]
public long TranId { get; set; }
}
XmlSerializer ser2 = new XmlSerializer(typeof(List<PmtTransaction>)
, new XmlRootAttribute("reestr")
);
List<PmtTransaction> envelope;
using (StringReader reader = new StringReader(newXml))
{
envelope = (List<PmtTransaction>)ser2.Deserialize(reader);
return envelope;
}