Delphi XE中的数据绑定向导 – 是否可以配置为映射到MSXML接口?
发布时间:2020-12-15 09:13:23 所属栏目:大数据 来源:网络整理
导读:Delphi XE中的数据绑定向导生成继承自Delphi自己的DOM实现(ADOM XML v4)的类和接口,它似乎不支持对模式的验证 – ‘验证解析’选项仅适用于MSXML供应商type – 从VCL源代码以及IDE中的XMLDocument组件的行为可以看出.所有验证支持似乎都基于MSXML实现,如果您
Delphi XE中的数据绑定向导生成继承自Delphi自己的DOM实现(ADOM
XML v4)的类和接口,它似乎不支持对模式的验证 – ‘验证解析’选项仅适用于MSXML供应商type – 从VCL源代码以及IDE中的XMLDocument组件的行为可以看出.所有验证支持似乎都基于MSXML实现,如果您需要模式验证,这会使向导无效.我在这里错过了什么吗?有没有办法配置绑定向导(或一些底层实用程序)来生成基于MSXML的类和接口,它支持验证?或者是否有使用Delphi实现的ADOM XML支持模式验证的调用/接口,我还没有遇到过?
MNG 解决方法
XML数据绑定向导生成的代码取决于单元
XMLDoc和
XMLIntf(文档引用是
TXMLDocument和
IXMLDocument).
IXMLDocument由TXMLDocument实现,TXMLDocument是Delphi支持的XML DOM的通用包装器. TXmlDocument使用的DOM取决于DOMVendor property的值. 如果在激活TXMLDocument实例时未指定DOMVendor(它不是XML数据绑定向导生成DOM中性代码),则使用的实际XML DOM取决于XMLDOM unit的这两个成员: var DefaultDOMVendor: string; DOMVendors: TDOMVendorList; 在您的情况下,似乎MSXML DOM是默认的XML DOM,或者是唯一可用的XML DOM. 因此,您应该检查DefaultDOMVendor和DOMVendors列表的值. 如果您可以使用上述值编辑问题,这肯定会有所帮助,并且可重现的案例显示您如何观察MSXML DOM的使用情况. 编辑: 您可以在加载XML根节点之前运行时使用特定的XML DOM供应商,或者创建一个新的XML根节点,如下所示: DefaultDOMVendor = 'MSXML'; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |