清理XML服务的Web服务中的非标准字符

时间:2013-11-26 15:39:36

标签: .net sql-server xml web-services

我有一个包含用户列表的数据库,我偶尔会通过webservice将该用户列表传递给远程计算机。我接到了一个远程设施的电话,说没有新用户出现。

一项小小的研究发现了问题 - 网络服务将数据库中的用户列表作为XML文件提供,其中一个用户的名字中有一个非标准字符(“María”)。目标PC看到这个非标准字符并且因为XML被“破坏”而窒息,因此处理该点之后的NONE记录。

短期修复很容易 - 玛丽亚成了玛丽亚。突然间,所有记录都会毫无问题地处理。然而,长期解决方案是我关心的问题。我怎么能以某种方式强制识别这些非标准字符?

请注意,webservice只是获取数据库表的内容并将其作为XML格式化; XML文件不是我手动形成的任何东西,而是网络服务如何开展业务。

提前感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

我猜你是通过字符串连接创建XML的。您应该使用XmlWriter来创建XML输出。它将负责非ascii字符,xml实体和许多其他事情的正确编码。

如果不是这样,则xml正确构建,xml解析代码有问题。