Вопрос

I am trying to use ServiceStack.Text to deserialize some XML.

Code:

var buildEvent = dto.EventXml.FromXml<TfsEventBuildComplete>();

The opening xml line is:

<?xml version="1.0" encoding="UTF-16"?>

ServiceStack fails with the following error:

The encoding in the declaration 'utf-16' does not match the encoding of the document 'utf-8'.

I can see from the source of the Xml Serializer that ServiceStack uses UTF-8.

I am wondering whether ServiceStack.Text can deserialize UTF-16 and if so how? And if not, why not?

Это было полезно?

Решение

I have managed to hack my way around the issue. I'm not proud of it but....

var buildEvent = dto.EventXml.Replace("utf-16", "utf-8").FromXml<TfsEventBuildComplete>();
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top