首页 > 解决方案 > 将包含 & 的 XML 值节点保存到数据库中的正确方法是什么?

问题描述

今天有人向我的 asp.net 4.8 后端应用程序发送了一个 XML,如下所示:

<person>
   <name>example1 &amp;#38 example2</name>
</person>

服务器应用程序读取节点值并将其保存在 sql db 列 dbo.Person.Name 中,无需任何解码。第一个配音:不好吗?应该如何存放?应该先解码。

无论如何假设该值将按原样保存,应用程序的客户端部分迟早会从服务器请求数据,并且该字符串将被发送到客户端并正确显示,因为它是一个 html 编码字符串。

我正在处理的问题是当客户端在发布请求中将此数据返回给服务器时引发的验证异常。

最简单的原因应该是替换/转义帖子正文中包含的“&”。

这是最好的处理方式吗?服务器和客户端之间应该如何传输数据?

标签: htmlasp.netxmldecodeencode

解决方案


“今天有人发送了一个 XML”

回到他们身边,问他们为什么要发送这么脏的数据,并告诉他们你还没有准备好把这样的垃圾放在你的数据库中。

从表面上看,它似乎&amp;#38是一次完全拙劣的尝试来逃避 & 符号。


推荐阅读