获取客户列表时发现无效 XML 字符

Invalid XML character found when fetching customer list

用户可以在使用 QBO 时 copy/paste 将无效字符输入备注字段。当使用 QBO SDK v3 服务从 QBO 加载客户列表时,当 API 试图反序列化 XML 时抛出异常。我们无法控制 QBO 客户在线粘贴到其客户备注中的文本。我们无法控制 Intuit v3 服务发送到发生错误的 QBO SDK 程序集的 XML。 Intuit 表示他们不会从发送到 SDK 程序集的 XML 中过滤无效字符。 (请参阅 https://intuitdeveloper.lc.intuit.com/questions/903965-invalid-xml-character-found-when-fetching-customer-list 的评论)

我们目前一次接待 500 位客户。我能想到的最好的方案是:

  1. 捕获特定错误。
  2. 一次请求同一批 500 个,同时拦截每个的 XML 日志。
  3. 通知用户该错误并跳过它或使用截获和清理的 XML 注释修改在线注释并再次请求它。
  4. 然后在完成后继续下一个 500。

为了弥补 Intuit 系统问题,需要做大量工作。有没有更简单的方法来补偿或防止这个问题?愿原力与你同在

咳咳。在 .Net API 中真的很简单。不要使用 XML.

ServiceContext.IppConfiguration.Message.Request.SerializationFormat = Intuit.Ipp.Core.Configuration.SerializationFormat.Json
ServiceContext.IppConfiguration.Message.Response.SerializationFormat = Intuit.Ipp.Core.Configuration.SerializationFormat.Json