【发布时间】:2008-10-28 17:32:16
【问题描述】:
我必须启动并运行一个快速而肮脏的配置编辑器。流程是这样的:
配置(服务器上的 POCO)-> Xml(序列化,作为 XElements 传输到网站)-> 文本(在网页中就地编辑)
(进行更改)
文本编辑器-> XElement(解析提交的表单值)-> 配置
问题在于序列化不会转义任何字符串。但是当我尝试将其解析回 xml 时,我无法弄清楚如何将字符串放入 XElement 而不引发异常。
例如,假设我有一个包含正则表达式的对象。这将是编辑器中的片段:
<Validator Expression="[^<]" />
但是,在回程中,我无法将其恢复为 XElement 形式,因为该属性具有非法字符。
我不知道如何指示序列化程序转义字符,我也不知道如何让解析器在返回时忽略它们。
我能看到的唯一方法是对 XML 做一些非常粗略的正则表达式替换,我几乎完全可以保证在某些极端情况下会搞砸。
还有其他方法吗?
【问题讨论】: