2

我正在尝试使用 ServiceStack.Text 反序列化一些 XML。

代码:

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

开头的 xml 行是:

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

ServiceStack 失败并出现以下错误:

声明“utf-16”中的编码与文档“utf-8”的编码不匹配。

我可以从 Xml Serializer 的源代码中看到 ServiceStack 使用 UTF-8。

我想知道 ServiceStack.Text 是否可以反序列化 UTF-16,如果可以,如何反序列化?如果没有,为什么不呢?

4

1 回答 1

1

我设法解决了这个问题。我并不为此感到骄傲,但是......

var buildEvent = dto.EventXml.Replace("utf-16", "utf-8").FromXml<TfsEventBuildComplete>();
于 2014-05-11T03:40:32.733 回答