Похоже, что таблица Link отражает многие: многие отношения между таблицей Object и таблицей данных.
Мое предложение состоит в использовании хранимой процедуры для управления транзакциями. Если вы хотите вставить в таблицу объектов или данных, выполните свои вставки, получите новые идентификаторы и вставьте их в таблицу ссылок.
Это позволяет всей вашей логике оставаться инкапсулированной в один простой вызов sproc.
Что ж, похоже, что клиент, сгенерированный Visual Studio, даже если он принимает XmlNode в качестве входных данных, сам создает некоторую необходимую внешнюю структуру (точнее: все внешние узлы с soapenv
и web
Пространства имен).
Что означает, что мне пришлось сократить входной XML до:
<?xml version="1.0" encoding="UTF-8"?><RegistryInterface xsi:schemaLocation="http://www.SDMX.org/resources/SDMXML/schemas/v2_0/message SDMXMessage.xsd" xmlns="http://www.SDMX.org/resources/SDMXML/schemas/v2_0/message" xmlns:common="http://www.SDMX.org/resources/SDMXML/schemas/v2_0/common" xmlns:compact="http://www.SDMX.org/resources/SDMXML/schemas/v2_0/compact" xmlns:cross="http://www.SDMX.org/resources/SDMXML/schemas/v2_0/cross" xmlns:generic="http://www.SDMX.org/resources/SDMXML/schemas/v2_0/generic" xmlns:query="http://www.SDMX.org/resources/SDMXML/schemas/v2_0/query" xmlns:structure="http://www.SDMX.org/resources/SDMXML/schemas/v2_0/structure" xmlns:registry="http://www.SDMX.org/resources/SDMXML/schemas/v2_0/registry" xmlns:utility="http://www.SDMX.org/resources/SDMXML/schemas/v2_0/utility" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><Header><ID>JD014</ID><Test>true</Test><Truncated>false</Truncated><Name xml:lang="en">Trans46302</Name><Prepared>2001-03-11T09:30:47-05:00</Prepared><Sender id="BIS" /></Header><QueryStructureRequest resolveReferences="false"><registry:DataflowRef /></QueryStructureRequest></RegistryInterface>